自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 maven 中父子关系模块的作用

maven 中,父模块的 `` 中的依赖,子模块不会直接继承,只会继承父模块的所依赖的版本信息;

2023-08-04 21:58:44 248

原创 既保证异步消费 ,又保证顺序消费的mq消费方案

从MQ的角度保证顺序,需要保证 生产者-消息队列-消费者 都是一对一的关系;从业务的角度保证顺序,需要在生产消息时指定消息的顺序,消费者再根据消息的顺序,按序消费

2023-05-24 22:14:45 316

原创 生产环境RocketMQ 顺序问题

生产环境RocketMQ 顺序问题

2023-05-24 22:01:37 181

原创 为什么双重校验锁(DCL) 还需要 volatile (内存屏障)来保证有序性?

为什么双重校验锁(DCL) 还需要 volatile (内存屏障)来保证有序性 ?

2023-05-19 20:52:27 153

原创 如何证明 Java 代码的重排序

为了提高程序的执行性能和编译性能,计算机和编译器可能会修改程序的执行顺序;修改后在单线程情况下,能保证程序正常运行。以上代码,如果执行顺序与编码顺序一致,就不可能出现 x、y 同时 为0的情况;重排序是指,代码的执行没有按照开发者的编码顺序执行。

2023-05-11 21:36:19 91

原创 从 NullPointerException 看 ConcurrentHashMap 、HashMap 异同

ConcurrentHashMap 的 value 不能为null

2023-03-31 17:29:19 93

原创 Coding 配置SSH凭据

Coding 配置 SSH凭据

2022-07-27 21:00:00 1286

原创 实践-利用反射和泛型优化简单工厂

实践-利用反射和泛型优化简单工厂

2022-07-16 17:49:34 129

原创 Docker 安装 RocketMQ

Docker 安装 RocketMQ1、search 搜索镜像docker search rocketmq2、查看镜像版本curl https://registry.hub.docker.com/v1/repositories/foxiswho/rocketmq/tags\| tr -d '[\[\]" ]' | tr '}' '\n'\| awk -F: -v image='foxiswho/rocketmq' '{if(NR!=NF && $3 != ""){printf(

2021-06-26 09:20:25 161

原创 Java 为什么不是引用传递

一、基本数据类型基本数据类型:调用 modify() 方法时,是从 实参 拷贝了一份数据 给形参;修改 形参 对 实参没有任何影响import lombok.Data;import lombok.experimental.Accessors;public class TransferTest{ public static void main(String[] args) { testInt(); } private static void testInt(

2021-06-21 17:01:31 246

原创 从IDEA 图标中 探索 Property 和 Field 的区别

缘起在用 IDEA 查看源码,通过 structre 窗口查看类结构时;猜测图标p 为成员变量; m为成员方法;f 就不清楚了而后百度之,得 f 为 field 的缩写;P 为 property 的缩写之所以没想到 f 是field ;是因为在我印象中 ,property 和 field 都是指成员变量;没想到 idea 对此有所区分此时想到,才工作时,和一个C#的同时讨论,他说属性和字段是区别的属性是外部可以通过setter 或 getter 访问 成员变量的字段没

2021-05-29 15:52:34 1396 4

原创 需求:对象转Map

思路对象转map,想到的有两种方式反射:获取字段名,组装map对象转 json 再转 map在本人的经验中,用 json 比较多,故在效率优先的工作环境中,选择用 json

2021-04-20 06:25:28 373

原创 MyCat分片规则

MyCat拆分原则(转自MyCat权威指南)达到一定数量级才拆分(800 万)不到 800 万但跟大表(超 800 万的表)有关联查询的表也要拆分,在此称为大表关联表大表关联表如何拆:小于 100 万的使用全局表;大于 100 万小于 800 万跟大表使用同样的拆分策略;无 法跟大表使用相同规则的,可以考虑从 java 代码上分步骤查询,不用关联查询,或者破例使用全局表。破例的全局表:如 item_sku 表 250 万,跟大表关联了,又无法跟大表使用相同拆分策略,也做成了全局 表。破例的全局表必

2021-03-04 16:07:03 86

原创 Spring Boot 自动装配

Spring Boot 自动装配文章目录Spring Boot 自动装配愚见一、自动装配做了什么?二、第三方包的配置类是如何交给 Spring 容器管理的?三、Spring Boot 是如何扫描到第三方包的?引用愚见@Configuration + @Bean 用于注册beanSpring 不会将 第三方的包 注册 为beanSpring 只会管理 当前包 和 子包 里面的类Spring 可以 通过 @Import 注解引入第三方包 里面的类理解自动装配主要需要 解决 以下三个问题一、自

2021-03-04 15:49:08 108 2

原创 Redis 缓存穿透、缓存雪崩、缓存击穿

Redis 缓存穿透、缓存雪崩、缓存击穿文章目录Redis 缓存穿透、缓存雪崩、缓存击穿一、缓存穿透1、什么是缓存穿透?2、造成缓存穿透的场景?3、布隆过滤器(布隆算法)二、缓存雪崩1、什么是缓存雪崩?2、造成缓存雪崩的场景3、Hash 一致性算法三、缓存击穿1、什么是缓存击穿?2、解决方案四、总结一、缓存穿透1、什么是缓存穿透?请求未命中缓存层,直接访问数据库的现象有缓存层就会有缓存穿透,除非数据库的数据 全部 同步到缓存中,否则就一定会存在缓存穿透只能尽量避免 高频 的缓存穿透,不能彻底解

2021-02-17 10:36:42 197 2

原创 Java数据类型和自动拆箱

Java数据类型和自动拆箱文章目录Java数据类型和自动拆箱愚见Java 数据类型前置知识点instanceof 判断变量类型封装类型的equals()方法自动拆箱拆箱装箱原理封装类型常见比较引用愚见整型 默认类型为 int浮点型 默认类型为 double在混合多种数据类型的表达式中,类型会向容量大的值的数据类型提升long + int/shot/byte = longshot/byte + shot/byte = intfloat + float = floatfloat/dou

2021-02-06 15:18:34 159 2

原创 ​新建并启动线程的四种方式

​新建并启动线程的4种方式愚见1、继承Thread2、实现Runnable接口3、匿名类实现Runnable4、lambda表达式愚见​Thread类实现了Runnable接口所有新建方式都与Thread对象有关所有的线程启动方式都是Thread.start()方法Thread.run()为线程执行的方法,Thread.start()为线程启动的方法;线程启动后会自动调用run();public class Thread implements Runnable { public Th

2020-05-14 21:28:33 158

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除