从一次重构说起 这事儿还得从一次重构优化说起. 最近在重构一个路由功能,由于路由比较复杂,需求变化也多,于是想通过责任链模式来重构,刚好这段时间也在 Sentinel-Go 中看到相关源码. 用责任链模式,最大的好处是可以针对每次请求灵活地插拔路由能力,如: 这样实现会在每次请求到来时去 new 出整个责任链,可以预见对象会频繁的创建.销毁. 对 Java 来说,对象池并不推荐,除非对象的创建特别费力,像一个连接对象,否则线程之间的锁竞争绝对比直接分配内存的消耗要多的多~ 但 Go 不一样,它内…