我用C++开发了一个迷你HTTP服务器,使用boost :: asio,现在我用多个客户端加载测试它,我一直无法接近饱和CPU.我正在测试一个Amazon EC2实例,大约50%使用一个cpu,20%使用另一个cpu,其余两个闲置(根据htop).
细节:
那么,我应该怎样看待改善这一结果呢?鉴于CPU大部分处于空闲状态,我希望利用这些额外的容量来获得更高的吞吐量,比如800请求/秒等等.
我有过的想法:
目前我不确定,我尝试制作高性能服务器,我有一个6Core CPU,所以如果我使用"io_service_per_cpu"设计,我有6个io_service.
我已经听说线程池设计不是最好的,但我不确定.
你有什么知识?有人已经用每个或其他东西做过压力测试吗?