У меня есть сервер веб-приложения под управлением Ubuntu 12.04 как гость KVM.
То, что я видел, - то, что даже под большой нагрузкой только одно ядро используется экстенсивно. Это не выпуск приложения, не являющегося многопоточным. Мы работаем nginx
и php-fpm
на этих серверах и я протестировал на ОС цента, что эти приложения действительно работают на всех ядрах, когда в большой степени загружено. Вот подробные сведения:
/usr/bin/kvm -S -M pc-1.0 -enable-kvm -m 20480 -smp 6,sockets=6,cores=1,threads=1 -name db1 -uuid 02af7f56-16ea-76cc-81f8-b5fa24993843d6 -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/db1.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown -drive file=/dev /vg0/db1,if=none,id=drive-virtio-disk0,format=raw,cache=none -device virtio- blk-pci,bus=pci.0,addr=0x4,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 -drive file=/dev/vg0/db1_vol2,if=none,id=drive-virtio-disk1,format=raw,cache=none -device virtio- blk-pci,bus=pci.0,addr=0x6,drive=drive-virtio-disk1,id=virtio-disk1 -drive file=/dev /vg1/db1_mysql,if=none,id=drive-virtio-disk2,format=raw,cache=none -device virtio- blk-pci,bus=pci.0,addr=0x7,drive=drive-virtio-disk2,id=virtio-disk2 -drive if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -netdev tap,fd=18,id=hostnet0,vhost=on,vhostfd=19 -device virtio- net-pci,netdev=hostnet0,id=net0,mac=52:54:00:b5:51:1e,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -usb -vnc 127.0.0.1:0 -k en-us -vga cirrus -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5
Почему это? Я понимаю, что планировщик будет стараться изо всех сил поддерживать в рабочем состоянии быстрые вещи, но я не вижу, что это поведение в RHEL основывало серверы.