我们一直在试验推出由centos通过centosplus v6提供的3.10系列内核。
我们已经注意到一些有趣的地方,在相同的负载下,服务器的负载是在3.10系列上的6-7倍,然后是2.6系列。 使用顶部,我们注意到这个过程使用了大量的CPU
[kworker/u66:2]
这导致我们安装powertop ,然后看到这一点
Usage Events/s Category Description 1110 ms/s 2045.2 Process php-fpm: pool www 36.0 ms/s 2165.4 Timer tick_sched_timer 57.7 ms/s 1285.0 Process nginx: worker process 13.3 ms/s 416.0 Timer hrtimer_wakeup 39.1 ms/s 350.7 Interrupt [3] net_rx(softirq)
在2.6系列上获得相同的stream量也是如此
Usage Events/s Category Description 1795 ms/s 1654.0 Process php-fpm: pool www 45.3 ms/s 1110.4 Process nginx: worker process 562.8 µs/s 122.4 Process /usr/bin/java -Xms200m -Xmx2000m -Xss256k -XX:MaxDirectMemorySize=516m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -Dage 497.1 µs/s 59.3 Process /usr/sbin/gmond 16.0 ms/s 30.2 Process /usr/bin/redis-server 127.0.0.1:6379 4.7 ms/s 32.8 Process python /usr/bin/statsd-relay.py 81.7 ms/s 0.00 Timer tcp_delack_timer 24.8 ms/s 0.00 Timer tick_sched_timer 549.4 µs/s 9.2 Process java -Xmx6g -server -Dfile.encoding=utf-8 -XX:OnOutOfMemoryError=kill -9 %p -XX:+HeapDumpOnOutOfMemoryError -XX:HeapD 15.2 ms/s 0.00 Interrupt [3] net_rx(softirq)
正如你所看到的,net_rx在2.6上是0,但是在3.10上我们可以得到4k / s。 服务器规格是相同的,并删除所有的sysctl设置。 我可以通过在服务器上安装3.10来复制这个问题。
我们有的尼斯是
06:00.0 Ethernet controller: Intel Corporation I350 Gigabit Network Connection (rev 01) 06:00.1 Ethernet controller: Intel Corporation I350 Gigabit Network Connection (rev 01) 06:00.2 Ethernet controller: Intel Corporation I350 Gigabit Network Connection (rev 01) 06:00.3 Ethernet controller: Intel Corporation I350 Gigabit Network Connection (rev 01)