ARTICLE · 1111984
Tomcat9源码剖析(五):值得借鉴的工程实践
Tomcat9源码剖析(五):值得借鉴的工程实践
Tomcat9源码剖析(五):值得借鉴的工程实践
看 Tomcat 源码,最值钱的不是那些高并发算法,而是它写代码的习惯。
状态别用一堆 boolean 拼。Tomcat 里全用枚举,非法状态在编译期就没了。比如 Acceptor 的分档休眠,靠枚举一眼就知道是在检测“刚刚进入暂停”的瞬间,换成 boolean 只能靠猜。
注释得写清楚防的是什么事故。比如那句“must,防止多线程搞乱 socket”,删了会怎样直接摆在眼前。废弃的方法也别急着删,留着空实现和签名,老配置才不会报错。
还有两件事必须一开始就做。一是给所有会增长的东西设上限,没上限迟早 OOM。二是监控埋点要塞进核心路径,事后想加根本找不到入口。
分层边界也得硬。协议层和容器层只靠接口对话,换 IO 模型或协议时,另一层完全不用动。要是改一处得牵连三个模块,那根本不叫分层,只是把代码塞进了不同文件夹。
原文Tomcat 9 源码剖析(五):值得借鉴的工程实践
河南,2小时前,