置顶新发布 —— 导航工具站
https://hao.junedreams.com
置顶关于本博客网站(持续更新中)
本文描述了本博客网站的建站目的、网站指引、当前版本用户可能会遇到的问题以及未来会如何解决这些问题、未来可能会添加的新功能。
Java 集合框架 QA
本文主要介绍了Q1: Java 集合框架的整体架构是怎样的?,Q2: ArrayList 和 LinkedList 有什么区别?分别适用于什么场景?,Q3: HashMap 的底层原理是什么?JDK 8 做了哪些优化?,Q4: HashMap 是线程安全的吗?ConcurrentHashMap 是怎么实现线程安全的?,Q5: HashSet 和 HashMap 是什么关系?,Q6: TreeMap 和 HashMap 有什么区别?什么时候用 TreeMap?,Q7: fail-fast 和 fail-safe 机制是什么?,Q8: 如何选择合适的集合类?,Q9: CopyOnWriteArrayList 适用于什么场景?和 Collections.synchronizedList 有什么区别?,Q10: BlockingQueue 有哪些实现?各自适用什么场景?,Q11: ConcurrentLinkedQueue 和 BlockingQueue 有什么区别?,Q12: ConcurrentSkipListMap 了解吗?和 TreeMap 有什么区别?,Q13: Collections.synchronizedMap 和 ConcurrentHashMap 怎么选?等内容
深入理解消息队列:RocketMQ核心原理与实战
本文主要介绍了一、为什么需要消息队列,二、主流消息队列横向对比,三、RocketMQ 架构深度解析,四、消息存储原理:CommitLog 与 ConsumeQueue,五、Topic、Queue 与 Tag 的概念层级,六、消息类型全解析,七、消息可靠性:三阶段保障,八、消费模式:集群消费与广播消费,九、消息幂等性,十、消息积压的处理,十一、死信队列,十二、RocketMQ 与 Kafka 的深度对比,十三、高可用部署架构,十四、消息轨迹与监控,十五、最佳实践小结,十六、Spring Boot 集成 RocketMQ 实战,十七、如果让你设计一个消息队列等内容
Alibaba Sentinel 限流算法
随着分布式系统日益普及,服务间的可靠性变得比以往任何时候都更加重要。Sentinel 以“流”为突破点,从流量控制、流量整形、并发限制、熔断和系统自适应过载保护等多个方面入手,保障微服务的可靠性和弹性 ...
Spring 核心原理全景图:IoC、bean生命周期、AOP 与事务、Spring Boot启动流程
本文主要介绍了控制反转 IoC,Bean 生命周期,BeanFactory 与 FactoryBean的区别,三级缓存与循环依赖,Spring AOP 机制与事务传播,Spring Boot 启动流转与自动装配原理等内容
从零手写 Spring Boot 自定义 Starter 及底层原理解析
本文主要介绍了一、 自动配置的基石:条件注解机制,二、 实战:从零手写一个短信 Starter,三、 `@Bean` 到底要不要加 `@Configuration`?,四、 现代 Starter 的规范写法:`@AutoConfiguration`,五、 属性绑定:`@ConfigurationProperties` 的避坑指南,六、 Maven 工程构建:写完代码如何交接?等内容
Java ThreadLocal 内存泄漏深挖
本文主要介绍了1. ThreadLocal 设计思路,2. 泄漏的完整过程,3. 为什么 GC 无法自动解决?,4. 澄清两种常见误解,5. 正确做法等内容
Java AQS 核心数据结构——CLH
本文主要介绍了1 锁原理,2 CLH 锁,3 Java AQS 对 CLH 锁的改进(CLH锁的变体)等内容
JVM 深度解析:从内存模型到性能调优
本文主要介绍了1. JVM 内存模型,2. 对象头(Object Header),3. 对象分配:栈上分配与 TLAB,4. JVM 把哪些对象放入老年代,5. 垃圾回收算法,6. 垃圾收集器的演进,7. G1 垃圾回收器,8. ZGC:下一代低延迟收集器,9. JVM MetaSpace 元数据空间,10. 字符串常量池,11. 直接内存与 Java NIO,12. Full GC 频繁的原因与内存泄漏,13. 如何分析内存问题,14. 栈溢出与堆溢出,15. JVM 安全点与安全区域,16. JVM 调优实践,17. 生产环境垃圾收集器选型,总结等内容