07 2021 档案

摘要:线程池ExecutorService 线程池状态 ThreadPoolExecutor使用int的高3位来表示线程池状态,低29位表示线程数量 状态 value 说明 RUNNING(当线程池创建出来的初始状态) 111 能接受任务,能执行阻塞任务 SHUTDOWN(调用shutdown方法) 00 阅读全文
posted @ 2021-07-28 22:34 yescctv6 阅读(66) 评论(0) 推荐(0) 编辑
摘要:问题描述 今天遇到一个spring事务嵌套的问题: **Transaction rolled back because it has been marked as rollback-only** 问题复现 在ConsumerService.c() 中调用 ProducerService.p() 在P 阅读全文
posted @ 2021-07-27 22:28 yescctv6 阅读(72) 评论(0) 推荐(0) 编辑
摘要:线程题1 设置三个线程并行 t1打印a t2打印b t3打印c 输出abc abc abc abc /** * * 设计三个线程并发执行 * t1 打印 a * t2 打印 b * t3 打印 c * * 输出 abc abc abc abc * */ public class LockTest9 阅读全文
posted @ 2021-07-26 21:25 yescctv6 阅读(84) 评论(0) 推荐(0) 编辑
摘要:问题 早上启动项目慢,启动很久后会启动失败。 解决 取消方法断点就可以了 在idea官网对breakpoints的解释中: 方法断点允许您在方法级别上跟踪程序流程以及检查和退出条件。请注意,使用方法断点会减慢正在调试的应用程序的速度。 阅读全文
posted @ 2021-07-25 14:51 yescctv6 阅读(41) 评论(0) 推荐(0) 编辑
摘要:使用lombok的@Data会导致栈溢出StackOverflowError。 问题代码 用户->角色->权限 @Data class SysUser{ private Set<SysRole> roles; } @Data class SysRole{ private Set<SysUser> u 阅读全文
posted @ 2021-07-25 14:44 yescctv6 阅读(257) 评论(0) 推荐(0) 编辑
摘要:toc 锁的膨胀过程 关于偏向锁 预备知识CAS 什么是CAS? compare and swap 比较和交换,在intel的CPU中,使用cmpxchg指令实现;在java发展初期,java语言是不能够利用硬件提供的这些遍历来提升系统性能的。而随着java不断的发展,Java本地方法(JNI)的出 阅读全文
posted @ 2021-07-16 09:30 yescctv6 阅读(125) 评论(0) 推荐(0) 编辑
摘要:toc 并发编程之synchronize原理-对象头 扫盲 存储单位的bit 和 Byte 1.bit(比特) bit也就是我们不一定听说过的比特,大名鼎鼎的比特币就是以此命名的。它的简写为小写字母 “b” 。 作为信息技术的最基本存储单元,因为比特实在太小了,所以大家生活中并不是经常听到。那么 b 阅读全文
posted @ 2021-07-16 09:28 yescctv6 阅读(108) 评论(0) 推荐(0) 编辑
摘要:关键字待总结 10就是对象头的一个属性 mutex 重量锁 用户态 内核态 JVM线程模型 一对一 MMU MMAP 关于线程模型的总结 JAVA中,基本我们所说的线程(Thread)实际上应该叫作“用户线程”,而对应到操作系统,还有另一种线程叫作“内核线程”。 用户线程和内核线程之间必然存在某种关 阅读全文
posted @ 2021-07-16 09:26 yescctv6 阅读(260) 评论(0) 推荐(0) 编辑
摘要:java当中的线程和操作系统的线程是什么关系?关于操作系统的线程--> linux操作系统的线程控制原语linux上启动一个线程的代码:在java代码里启动一个线程的代码toc java当中的线程和操作系统的线程是什么关系? 关于操作系统的线程--> linux操作系统的线程控制原语 int pth 阅读全文
posted @ 2021-07-16 09:24 yescctv6 阅读(65) 评论(0) 推荐(0) 编辑
摘要:垃圾回收器串讲及 HostSpot 的细节实现(JVM 面试 “ 核武器 ) 并发标记与三色标记 三色标记 在三色标记法之前有一个算法叫 Mark-And-Sweep(标记清除)。这个算法会设置一个标志位来记录对象是否被使用。最开始所有的标记位都是 0,如果发现对象是可达的就会置为 1,一步步下去就 阅读全文
posted @ 2021-07-16 09:23 yescctv6 阅读(60) 评论(0) 推荐(0) 编辑
摘要:SpringBoot启动脚本记录 #!/bin/sh ### #jar包名称 SERVICE_NAME="cus" #上一级目录的env文件(指定启动环境dev/test/prod/uat) ENVFILE="../env" #同级目录的pid文件(写入进程id) PIDFILE="pid" che 阅读全文
posted @ 2021-07-15 13:35 yescctv6 阅读(117) 评论(0) 推荐(0) 编辑
摘要:Ubuntu18.04.3 LTS 硬盘挂载 查看磁盘信息 sudo fdisk -l 创建磁盘挂载点目录 将硬盘挂载到 /data 下,新建文件夹 sudo mkdir /data 挂载 sudo mount /dev/sdb1 /data 设置开机自动挂载 查看硬盘的UUID sudo blki 阅读全文
posted @ 2021-07-15 13:18 yescctv6 阅读(83) 评论(0) 推荐(0) 编辑
摘要:本文记录时间:2020年7月 Native 支付 Native支付是指商户系统按微信支付协议生成支付二维码,用户再用微信“扫一扫”完成支付的模式。该模式适用于PC网站、实体店单品或订单、媒体广告支付等场景。 后台配置的参数 回调通知地址 整体流程 1、下单 2、返回二维码链接 3、扫码支付 4、接收 阅读全文
posted @ 2021-07-15 13:08 yescctv6 阅读(148) 评论(0) 推荐(0) 编辑
摘要:特别说明: 本文作者:光的瞬间 本文转自: https://www.extlight.com/2017/10/07/MySQL-%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96%E6%8A%80%E5%B7%A7/ 一、背景 最近公司项目添加新功能,上线后发现有些功能的列表查 阅读全文
posted @ 2021-07-14 23:00 yescctv6 阅读(49) 评论(0) 推荐(0) 编辑
摘要:1. 检查是log_bin是否开启 增量备份需要开启log_bin 若状态为on 则是已经开启log_bin 若没开启log_bin,则修改mysql配置文件my.cnf,添加以下配置,重启mysql使配置生效 server-id=1 log-bin = /usr/local/mysql/mysql 阅读全文
posted @ 2021-07-14 22:13 yescctv6 阅读(458) 评论(0) 推荐(0) 编辑
摘要:1 mysql架构介绍 1.1 Mysql简介 1.2 MysqlLinux版本的安装--mysql5.5 1.3 Mysql配置文件 mysql --help | grep 'Default options' -A 1 linux查看配置文件位置 linux 默认位置为/etc/my.cnf文件 阅读全文
posted @ 2021-07-14 22:05 yescctv6 阅读(75) 评论(0) 推荐(0) 编辑
摘要:SpringBoot自定义线程池 本文转自 链接:https://www.jianshu.com/p/832f2b162450 1. 自定义线程池 1.1 修改application.properties task.pool.corePoolSize=20 task.pool.maxPoolSize 阅读全文
posted @ 2021-07-14 21:13 yescctv6 阅读(59) 评论(0) 推荐(0) 编辑
摘要:问题 生产环境应用响应特别慢, 查看应用日志发现Mysql有事务未提交,导致整个表锁死, 通过应用日志并没有定位到具体问题,(此时并没有想着 去看mysql的日志) 尝试重启Mysql,重启Mysql后,应用恢复正常, 但过了10分钟左右,又出现了同样的问题, 再次尝试重启Mysql,这次Mysql 阅读全文
posted @ 2021-07-04 18:17 yescctv6 阅读(237) 评论(0) 推荐(0) 编辑
摘要:Edit SpringCloud-SpringCloudAlibabaNacos入门 SpringCloud-SpringCloudAlibabaNacos入门 Nacos简介 为什么叫nacos nacos官方文档 nacos能干嘛? 各个注册中心对比 安装并运行Nacos Nacos作为服务注册 阅读全文
posted @ 2021-07-04 17:00 yescctv6 阅读(207) 评论(0) 推荐(0) 编辑
摘要:SpringCloud-SpringCloudAlibabaSentinel入门二 @SentinelResource介绍 @SentinelResource 按资源名称限流 1.新建RateLimitController @RestController public class RateLimit 阅读全文
posted @ 2021-07-04 16:59 yescctv6 阅读(96) 评论(0) 推荐(0) 编辑
摘要:SpringCloud-SpringCloudAlibabaSentinel入门一 Sentinel简介 是什么 一句话解释就是我们之前讲过的hystrix 下载地址 https://github.com/alibaba/Sentinel/releases 主要特性 安装Sentiel控制台 sen 阅读全文
posted @ 2021-07-04 16:57 yescctv6 阅读(155) 评论(0) 推荐(0) 编辑
摘要:哈希码(HashCode) 哈希码产生的依据:哈希码并不是完全唯一的,它是一种算法,让同一个类的对象按照自己不同的特征尽量的有不同的哈希码,但不表示不同的对象哈希码完全不同。也有相同的情况,看程序员如何写哈希码的算法。 在Java中哈希码代表对象的特征。 例如: String str1 = "aa" 阅读全文
posted @ 2021-07-04 16:51 yescctv6 阅读(109) 评论(0) 推荐(0) 编辑
摘要:彻底搞懂String类 String类相关面试题 String类能被继承吗,为什么 String类不能被继承。 在Java中,只要是被定义为final的类,也可以说是被final修饰的类,就是不能被继承的。 String类为什么被final修饰 了解 final final 可以修饰类、方法、变量。 阅读全文
posted @ 2021-07-04 15:28 yescctv6 阅读(55) 评论(0) 推荐(0) 编辑
摘要:Collections.shuffle() Java.util.Collections类下有一个静态的shuffle()方法,如下: 1)static void shuffle(List<> list) 使用默认随机源对列表进行置换,所有置换发生的可能性都是大致相等的。 2)static void 阅读全文
posted @ 2021-07-04 15:27 yescctv6 阅读(40) 评论(0) 推荐(0) 编辑
摘要:ArrayList原理 数据结构 ArrayList的底层数据结构就是一个数组,数组元素的类型为Object类型,对ArrayList的所有操作底层都是基于数组的。 自己制作一个ArrayList package com.lhx.list; import java.util.ArrayList; i 阅读全文
posted @ 2021-07-04 15:26 yescctv6 阅读(38) 评论(0) 推荐(0) 编辑
摘要:快速复制系统源码并去除空白行背景介绍有些场景下需要将系统的所有源码拷贝在一起,比如:申请软件著作权时需要提供源码,一个一个java文件copy就太慢了。解决方案在测试服务器上执行以下脚本:find . -name '*.java' -o -name '*.ftl' | xargs cat |head 阅读全文
posted @ 2021-07-04 15:24 yescctv6 阅读(1641) 评论(0) 推荐(0) 编辑
摘要:Docker总结 Docker简介及特点 Docker是基于Go语言实现的云开源项目。 一次构建、随处运行 Docker安装 https://www.cnblogs.com/kingsonfu/p/11576797.html 待写 Docker常用命令 帮助命令 docker version doc 阅读全文
posted @ 2021-07-04 15:22 yescctv6 阅读(36) 评论(0) 推荐(0) 编辑
摘要:第一个vue-cli项目 什么是vue-cli vue-cli是官方提供的一个脚手架,用于快速生成一个vue的项目模板; 预先定义好的目录结构及基础代码,就好比我们在创建maven项目时可以选择创建一个骨架项目,这个骨架项目就是脚手架,我们的开发更加的快速; 主要功能: 统一的目录结构 本地调试 热 阅读全文
posted @ 2021-07-04 15:18 yescctv6 阅读(124) 评论(0) 推荐(0) 编辑
摘要:VUE学习记录 Day01 什么是Vue.js Vue.js 是目前最火的一个前端框架,React是最流行的一个前端框架(React除了开发网站,还可以开发手机App, Vue语法也是可以用于进行手机App开发的,需要借助于Weex) Vue.js 是前端的主流框架之一,和Angular.js、Re 阅读全文
posted @ 2021-07-04 15:16 yescctv6 阅读(88) 评论(0) 推荐(0) 编辑
摘要:JVM学习总结2 垃圾回收机制及算法 垃圾回收基础知识 什么是GC? Java 与 C++等语言最大的技术区别:自动化的垃圾回收机制(GC) 为什么要了解 GC 和内存分配策略 1、面试需要 2、GC 对应用的性能是有影响的; 3、写代码有好处 栈:栈中的生命周期是跟随线程,所以一般不需要关注 堆: 阅读全文
posted @ 2021-07-04 15:14 yescctv6 阅读(200) 评论(0) 推荐(0) 编辑
摘要:玩转JVM中的对象及引用 JVM中对象的创建过程 对象的内存分配 虚拟机遇到一条new指令时,首先检查是否被类加载器加载,如果没有,那必须先执行相应的类加载过程。 类加载就是把class加载到JVM的运行时数据区的过程(类加载后面有专门的专题讲) 1)检查加载 首先检查这个指令的参数是否能在常量池中 阅读全文
posted @ 2021-07-04 15:12 yescctv6 阅读(165) 评论(0) 推荐(0) 编辑
摘要:深入理解JVM的内存区域 深入理解运行时数据区 代码示例: package ex2; /** * VM参数 * -Xms30m -XMx30m -XX:MaxMetaspaceSize=30m * * -Xms30m 堆的初始大小 * -XMx30m 堆的最大大小 *-XX:MaxMetaspace 阅读全文
posted @ 2021-07-04 15:11 yescctv6 阅读(96) 评论(0) 推荐(0) 编辑
摘要:Redis 实现分布式锁 1. 概述 分布式锁是一种思想,他的实现方式有很多种,但是大体步骤一致。 加锁 解锁 锁超时(避免死锁) 分布式锁实现方式 数据库 redis zookeeper /** 使用redis分布式锁需要注意一下3点 1.设置lock的key值(value) 必须是uuid(其他 阅读全文
posted @ 2021-07-04 15:10 yescctv6 阅读(69) 评论(0) 推荐(0) 编辑
摘要:maven 常用命令 常见属性标签 Scope scope定义了类包在项目的使用阶段。项目阶段包括:编译,运行,测试和发布 scope属性说明 compile 默认scope为compile,表示当前依赖参与项目的编译、测试和运行阶段,属于强依赖。打包时, 会打到包里面 test 该依赖仅仅参与测试 阅读全文
posted @ 2021-07-04 15:04 yescctv6 阅读(66) 评论(0) 推荐(0) 编辑
摘要:七大设计原则 单一职责原则 里氏替换原则 依赖倒置原则 开闭原则 迪米特法则(最少知道原则) 接口隔离原则 组合优于继承原则 单一职责原则 每个类每个方法只做一件事 优点:代码的重用性 开闭原则 对扩展新功能是开放的 对修改原有功能是关闭的 比如: 有一个刮胡刀,它的作用就是刮胡子,现在想让刮胡刀具 阅读全文
posted @ 2021-07-04 15:00 yescctv6 阅读(103) 评论(0) 推荐(0) 编辑
摘要:Redis基础 1 Redis简介 2 Redis 安装及配置 2.1 docker docker pull redis docker run -d --name redis -p 6379:6379 redis docker exec -it redis redis-cli 2.2 Linux安装 阅读全文
posted @ 2021-07-04 14:56 yescctv6 阅读(43) 评论(0) 推荐(0) 编辑
摘要:Edit MyCat快速入门 第一章 入门概述 MyCat是什么 Mycat 是数据库中间件。 1. 数据库中间件 中间件:是一类连接软件组件和应用的计算机软件,以便于软件各部件之间的沟通。 例子:Tomcat,web中间件。 数据库中间件:连接java应用程序和数据库 2. 为什么要用Mycat 阅读全文
posted @ 2021-07-04 14:48 yescctv6 阅读(73) 评论(0) 推荐(0) 编辑
摘要:git常用总结(Git高级) git常用总结(Git高级)写在前面(原则)git merge合并git tag打标签及标签命名规范打标签、查看标签命令git 标签命名规范git通过Tag标签修复紧急buggit fetchTOC 写在前面(原则) 原则,master和dev作为两条主分支,它们的代码 阅读全文
posted @ 2021-07-04 14:44 yescctv6 阅读(40) 评论(0) 推荐(0) 编辑
摘要:IDEA常用快捷键 Extra Method 将选定代码抽成方法(ctrl+M) 选中代码+快捷键ctrl+M 变量名的批量处理(shift+F6) 选中修改对象: shift + F6 指定类查看继承关系(ctrl+H) 选中+快捷键ctrl + H 指定类查看diagram(ctrl+alt+u 阅读全文
posted @ 2021-07-04 14:42 yescctv6 阅读(83) 评论(0) 推荐(0) 编辑
摘要:标识符 含义 备注 * 日常需要经常翻阅的重要笔记 & 自己整理的笔记 # 网上摘抄的文章或笔记 $ 重要信息备份 TODO 待整理内容 @ 工作内容代办 md总结 锚点 该题解析 题目解析 文字标黄 文字标黄 隐藏代码 <details> <summary>案例标题</summary> ``` 隐 阅读全文
posted @ 2021-07-04 14:39 yescctv6 阅读(74) 评论(0) 推荐(0) 编辑

主题色彩
点击右上角即可分享
微信分享提示