-
Notifications
You must be signed in to change notification settings - Fork 654
Yan Shiguang edited this page Dec 11, 2016
·
3 revisions
- Makefile中增加 CXXFLAGS ?= -DSOFA_PBRPC_TCP_NO_DELAY=false,启用Nagle algorithm。
- client和server联编tcmalloc。
- client采用异步方式尽力投递。
- 根据机器的核数,调整client端work_thread_num与callback_thread_num.
- 调整server端work_thread_num与io_service_pool_size,增加io_service_pool_size对性能有显著提升。
- RPC请求模式:Request 数据 1 byte(发送字符串”z”); Response 数据 2 byte(返回字符串”OK”);关闭tcp_no_delay。
- 机器配置:CPU 16 core, 128G内存, 万兆网卡。
- Client配置:8个client进程分布在8台机器上,每个client进程尽自己最大努力并发发送异步请求,接收回复并检查返回值正确性。
thread ioservice |
1 | 2 | 4 | 8 | 12 | 16 | 20 | 24 | 32 |
---|---|---|---|---|---|---|---|---|---|
1 | 60510 | 101991 | 255437 | 445702 | 545815 | 507490 | 474581 | 454665 | 420289 |
2 | 130175 | 287485 | 591680 | 942649 | 759990 | 692377 | 640385 | 581776 | 448734 |
4 | 362931 | 672653 | 1198326 | 1096107 | 863979 | 694021 | |||
8 | 807089 | 1041806 | 1233861 | 1096262 | |||||
12 | 1208226 | 1400701 | 1328662 | ||||||
16 | 1469432 | 1152307 | |||||||
20 | 1458172 | 1270719 | |||||||
24 | 1145622 | ||||||||
28 | 1182464 | ||||||||
32 | 1157053 |
- 同机启动server和client,client限速2000qps,请求包分别为256B、1KB、4KB、10KB、100KB、1MB,运行10秒后统计延时的分布。
- 机器配置:CPU 16 core, 128G内存, 万兆网卡。