
現在、E5-2620V3 6 コア CPU を搭載したサーバーを所有しています。
私は nginx と gunicorn を使用して Python アプリを実行しています。
連続ループで 150 のクライアントを使用してアプリの負荷テストを実行すると、スループットは 20k req/分になります。ただし、CPU は 40% しか使用されません。
12 コアの同じ CPU に切り替えることができます。
I/O やメモリのボトルネックがない場合は、スループットが 2 倍になりますか?
答え1
どのデバイスがボトルネックになっているのかを突き止める必要があります。
これまでのところ、原因は CPU ではないことが分かっています。つまり、コア数を増やしてもほとんど効果がない、またはわずかにマイナスの影響があるということです。これは、コア数が多い CPU のほとんどはクロック レートが低いためです。
私はディスク使用量の監視にiotop、ネットワーク負荷の監視にiftop、CPUとRAMの使用量の監視にhtopを使うのが好きです。これらをすべてtmuxに入れれば、一度に監視できます。最も負荷の高いものを探してください。原因に応じて