一、
1. 配置 communicator
Ice::InitializationData id;
id.properties = Ice::createProperties(argc, argv);
id.properties->setProperty("Ice.ThreadPool.Server.Size", "50");
id.properties->setProperty("Ice.ThreadPool.Server.SizeMax", "5000");
Ice::CommunicatorPtr ic = Ice::initialize(id);
2. 性能比较
t35 8核Intel(R) Xeon(R) CPU E5504 @ 2.00GHz, 16427484k
t7、t19 8核Quad-Core AMD Opteron(tm) Processor 2376 2.2GHz ,8180596k
a. 在同等机器性能条件下,如果在t19 client是在单线程轮寻调t35、t7服务,oneway 调用,则瓶颈在 client。
client 10000次调用 7s
a. Intel(R) Xeon(R) CPU E5607 @ 2.27GHz *8 (c++ server, server服务不进行任何操作)
b. Intel(R) Xeon(R) CPU E5504 @ 2.00GHz *8 (python client)
c. Quad-Core AMD Opteron(tm) Processor 2376 *8 (python client)
b.c 分别启动 20线程,调用a 直接返回的服务,结果
thread count:25
rpc count:100000
cpu
a. 110%左右, 明显系统cpu时间暴涨,出入流量到1.6M/s
b、 150%+,
thread count:25
rpc count:100000
thread 1 time cost: 190.817545891 good: 100000 bad: 0 total: 100000
thread 3 time cost: 192.633660078 good: 100000 bad: 0 total: 100000
thread 4 time cost: 193.928549051 good: 100000 bad: 0 total: 100000
thread 5 time cost: 194.350112915 good: 100000 bad: 0 total: 100000
thread 8 time cost: 195.141586065 good: 100000 bad: 0 total: 100000
thread 7 time cost: 195.475055933 good: 100000 bad: 0 total: 100000
thread 13 time cost: 196.3656919 good: 100000 bad: 0 total: 100000
thread 10 time cost: 196.49310708 good: 100000 bad: 0 total: 100000
thread 11 time cost: 196.561962128 good: 100000 bad: 0 total: 100000
thread 9 time cost: 196.870028973 good: 100000 bad: 0 total: 100000
thread 6 time cost: 196.92367506 good: 100000 bad: 0 total: 100000
thread 14 time cost: 197.120689154 good: 100000 bad: 0 total: 100000
thread 12 time cost: 197.516937017 good: 100000 bad: 0 total: 100000
thread 18 time cost: 198.041389942 good: 100000 bad: 0 total: 100000
thread 17 time cost: 198.55667901 good: 100000 bad: 0 total: 100000
thread 15 time cost: 199.877511978 good: 100000 bad: 0 total: 100000
thread 24 time cost: 199.928775787 good: 100000 bad: 0 total: 100000
thread 25 time cost: 200.006708145 good: 100000 bad: 0 total: 100000
thread 21 time cost: 200.113910913 good: 100000 bad: 0 total: 100000
thread 19 time cost: 200.139334917 good: 100000 bad: 0 total: 100000
thread 20 time cost: 200.712648153 good: 100000 bad: 0 total: 100000
thread 23 time cost: 200.774966955 good: 100000 bad: 0 total: 100000
thread 22 time cost: 200.945472002 good: 100000 bad: 0 total: 100000
thread 2 time cost: 227.981843948 good: 100000 bad: 0 total: 100000
thread 16 time cost: 231.695544958 good: 100000 bad: 0 total: 100000
c. 60%
thread count:25
rpc count:100000
thread 1 time cost: 169.152802944 good: 100000 bad: 0 total: 100000
thread 2 time cost: 170.145525932 good: 100000 bad: 0 total: 100000
thread 3 time cost: 170.607025862 good: 100000 bad: 0 total: 100000
thread 8 time cost: 171.136478901 good: 100000 bad: 0 total: 100000
thread 13 time cost: 171.155146122 good: 100000 bad: 0 total: 100000
thread 9 time cost: 171.206602812 good: 100000 bad: 0 total: 100000
thread 5 time cost: 171.238162994 good: 100000 bad: 0 total: 100000
thread 7 time cost: 171.237888813 good: 100000 bad: 0 total: 100000
thread 6 time cost: 171.274736881 good: 100000 bad: 0 total: 100000
thread 14 time cost: 171.440169096 good: 100000 bad: 0 total: 100000
thread 10 time cost: 171.470035076 good: 100000 bad: 0 total: 100000
thread 11 time cost: 171.564094067 good: 100000 bad: 0 total: 100000
thread 16 time cost: 171.598706961 good: 100000 bad: 0 total: 100000
thread 12 time cost: 171.624701977 good: 100000 bad: 0 total: 100000
thread 4 time cost: 171.674793005 good: 100000 bad: 0 total: 100000
thread 15 time cost: 171.674991846 good: 100000 bad: 0 total: 100000
thread 18 time cost: 171.635885954 good: 100000 bad: 0 total: 100000
thread 17 time cost: 171.682169914 good: 100000 bad: 0 total: 100000
thread 20 time cost: 171.74409914 good: 100000 bad: 0 total: 100000
thread 19 time cost: 171.911789894 good: 100000 bad: 0 total: 100000
thread 21 time cost: 171.957773924 good: 100000 bad: 0 total: 100000
thread 23 time cost: 172.075779915 good: 100000 bad: 0 total: 100000
thread 22 time cost: 172.139708996 good: 100000 bad: 0 total: 100000
thread 25 time cost: 172.361602068 good: 100000 bad: 0 total: 100000
thread 24 time cost: 172.390218973 good: 100000 bad: 0 total: 100000