39、案例分析(二):高性能网络应用框架NettyNetty是一个高性能网络应用框架,应用非常普遍,目前在Java领域里,Netty基本上成为网络程序的标配了。Netty框架功能丰富,也非常复杂,今天我们主要分析Netty框架中的线程模型,而线程模型直接影响着网络程序的性能。 在介绍Netty的线程...2026-01-19Java并发编程实战
40、案例分析(三):高性能队列Disruptor我们在[《20 | 并发容器:都有哪些“坑”需要我们填?》]介绍过Java SDK提供了2个有界队列:ArrayBlockingQueue 和 LinkedBlockingQueue,它们都是基于ReentrantLock实现的,在高并发场景下,锁的...2026-01-19Java并发编程实战
41、案例分析(四):高性能数据库连接池HiKariCP实际工作中,我们总会难免和数据库打交道;只要和数据库打交道,就免不了使用数据库连接池。业界知名的数据库连接池有不少,例如c3p0、DBCP、Tomcat JDBC Connection Pool、Druid等,不过最近最火的是HiKariCP。 Hi...2026-01-19Java并发编程实战
42、Actor模型:面向对象原生的并发模型上学的时候,有门计算机专业课叫做面向对象编程,学这门课的时候有个问题困扰了我很久,按照面向对象编程的理论,对象之间通信需要依靠消息,而实际上,像C++、Java这些面向对象的语言,对象之间通信,依靠的是对象方法。对象方法和过程语言里的函数本质上没有区...2026-01-19Java并发编程实战
43、软件事务内存:借鉴数据库的并发经验很多同学反馈说,工作了挺长时间但是没有机会接触并发编程,实际上我们天天都在写并发程序,只不过并发相关的问题都被类似Tomcat这样的Web服务器以及MySQL这样的数据库解决了。尤其是数据库,在解决并发问题方面,可谓成绩斐然,它的事务机制非常简单易用...2026-01-19Java并发编程实战
44、协程:更轻量级的线程Java语言里解决并发问题靠的是多线程,但线程是个重量级的对象,不能频繁创建、销毁,而且线程切换的成本也很高,为了解决这些问题,Java SDK提供了线程池。然而用好线程池并不容易,Java围绕线程池提供了很多工具类,这些工具类学起来也不容易。那有没...2026-01-19Java并发编程实战
45、CSP模型:Golang的主力队员Golang是一门号称从语言层面支持并发的编程语言,支持并发是Golang一个非常重要的特性。在上一篇文章[《44 | 协程:更轻量级的线程》]中我们介绍过,Golang支持协程,协程可以类比Java中的线程,解决并发问题的难点就在于线程(协程)之间...2026-01-19Java并发编程实战
46、结束语:十年之后,初心依旧曾经有个特别好的朋友跟我说过:“你挺适合当老师的!”其实适不适合并不一定,但是好为人师是一定的。到这里,我已经分享了45篇的技术文章,估计你也看累了、听累了,需要些时间好好消化消化。所以,最后咱们轻松一下吧,聊聊人生、聊聊理想,正好我也和你聊聊我那些...2026-01-19Java并发编程实战