坚信科学,分享技术

>>>尝试更加利于阅读的2014版科学院,以后都在新版上写。

Tag Archives: disruptor

disruptor thrift server连接参数与rps数值影响记录

基础环境 rmbp 8G MEM Intel(R) Core(TM) i7-3615QM CPU @ 2.30GHz 四核 八线程 oracle jdk 1.7.0_45 原理 如上图,是类似tomcat的nio实现过程,不过将queue换成了高性能的disruptor,可能会得到更好的性能。可调整参数为numAcceptors,numSelectors,numWorkersPerSelector三个值。 测试的代码位置在 https://github.com/54chen/disruptor_thrift_server 项目中的BenchmarkTest同时启动一个server,同时对其进行压测。 AbstractDisruptorTest.Service类中实现了server的逻辑,里面实际上是一个加减乘除的简单方法,故意加了300ms的sleep以尽可能模拟真实的消费时间。 BenchmarkTest类中实现了client的压力逻辑,固定了200个线程同时死循环地进行访问,同时进行计数统计rps。 调整记录 1.A(cceptors):4 S(electors):2 W(orkersPerSelector):2 处理接入的线程数:4 处理调用逻辑的线程数:2 推荐是cpu的核数以上 每个处理逻辑上的worker数量:2 结果: Rate: 16 req/s Rate: 12 req/s Rate: 12 req/s …

Continue reading

Posted in java | Tagged , | 2 Comments