至强系列的CPU可以承受多少网站并发连接数?
很多租用了服务器的客户至强系列CPU除了CC攻击跑高以外,还有就是网站或者程序并发数异常也会导致CPU跑高,对于计算密集型任务,在拥有Ncpu个处理器的系统上,当线程池大小为N+1时,通常能实现最优的利用率,(即当计算密集型任务偶尔由于页缺失故障或者其他原因而暂停时,这个额外的现线程也能够确保CPU的时钟周期不会被浪费。)
对于包含IO操作或者其他阻塞操作的任务,由于线程并不会一直执行,因此线程池的规模应该更大.要正确的设置线程池的大小,你必须估算出任务的等待时间和计算时间的比值。这种估算不需要很精确,并且可以通过一些分析活监控工具老获得。
还可以通过另外一种方法来调节线程池的大小,在某个基准负载下,分别设置不同大小的线程池来运行应用程序,并观察CPU的利用水平。
Ncpu = number of CPUs
Ucpu = target CPU utilization, 0 <= Ucpu <= 1
W
- = ratio of wait time to compute time
C
要使处理器达到期望的利用率,线程池的最优大小为:
Nthreads = Ncpu * Ucpu * (1 + W/C)
参考<<java concurrency in practise>> P141
一般线程数设置为 (cpu(核数)+1)*线程处理时间,四核cpu (4+1)*5 = 20 (线程池数量),高配置性能的CPU服务器配置可以点击了解。