- 博客(8)
- 收藏
- 关注
原创 java垃圾回收机制概要总结
摘要:垃圾回收机制通过可达性分析算法判断对象存活,采用分代收集理论(新生代用复制算法,老年代用标记-清除/整理)。常见算法包括标记-清除(产生碎片)、复制(高效但利用率低)和标记-整理(无碎片但效率低)。不同JDK版本默认收集器各异(如JDK8用Parallel,JDK11用G1),开发者需根据应用场景选择。引用类型和STW机制也是关键考量因素。
2025-09-16 15:55:31
349
原创 面试官问你擅长什么怎么回答?
近期深入研究Redis分布式锁的实现差异,在测试环境对比RedLock与Zookeeper方案时,发现RedLock在集群脑裂场景下的缺陷,这是我认为值得分享的实践。虽然我的技术深度仍在提升,但主导过3个项目的完整交付,特别擅长通过Jenkins+SonarQube构建自动化流水线,将部署效率提升40%持续关注OpenJDK新特性,最近在测试ZGC在低延迟场景的表现,这是我的学习笔记(可展示GitHub):避开泛泛而谈的增删改查能力,展示独特技术视角(如JVM调优实战经验)(适合1-3年经验)
2025-09-02 15:20:58
464
原创 JAVA AQS框架下的几种原生实现类及原理
实现类模式核心机制典型应用场景独占可重入、公平/非公平临界区互斥访问Semaphore共享许可计数控制资源池限流共享一次性计数触发多线程任务同步共享+独占读写分离读多写少的并发场景以上实现均依赖AQS的state、CLH队列及CAS操作,但通过不同的子类方法(如tryAcquire)定制了各自的同步逻辑。
2025-09-02 15:19:54
365
原创 为什么需要分布式锁
当多个节点(如微服务实例)需要修改同一数据(如库存扣减)时,分布式锁能确保同一时间只有一个节点执行操作,避免数据不一致。分布式锁的存在主要是为了解决分布式系统中多个进程或服务同时访问共享资源时可能引发的并发问题。对共享资源(如数据库某行记录)的操作需要原子性,分布式锁能像单机的"互斥量"一样保护这段逻辑。在定时任务或消息队列消费场景中,分布式锁可防止多个节点重复执行相同任务(如重复发送短信)。本质上,它是分布式环境下协调多节点行为的工具,核心目标是保证操作的。单机锁(如Java的。
2025-09-02 15:17:44
374
原创 parallelStream().forEach里面不能对list和map进行添加操作,会有线程安全问题
parallelStream是开启多个线程对集合里的数据进行操作,如果在中间操作执行的过程中对Map对象或者List对象进行add操作,会导致数据丢失问题,因为这两者都是非线程安全的(未上锁)。如果非要进行add操作需要换成线程安全的容器,例如ConcurrentHashMap,或者干脆把parallelStream()就换成stream()方法。
2024-11-26 15:15:46
320
原创 Controller层调用Service的方法报空指针异常NullPointException。【已解决】
当时在写一个需求,需要新增接口,我就日常的在controller中加了一个对应的方法,给前端调用,方法里也是正常的一层一层的往下调用biz -> service -> dao。当我启动项目,用postman测试的时候,我一调接口,很快啊,马上就抛错空指针异常了。然后我就在那三行里唯一可以打断点的那一行加了个断点,用postman再调用一次,进了断点之后,就看见biz对象为空了。当时就纳闷了,怎么这个还会空指针,写了这么多年的接口,还是第一次碰见。当时我也是一脸的无语,好吧,被这种低级失误浪费了这么久时间。
2023-12-11 14:23:05
638
1
原创 Nginx启动后页面一直报500,报错目录没有权限Permission denied,已解决
nginx由于启动用户配置错误导致访问页面目录一直没权限,页面报500
2023-01-31 11:25:44
4835
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅