Các nút web CentOS của tôi (LAMP stack) đang sử dụng CPU cao nhưng sử dụng bộ nhớ thấp. Gần như tất cả các quá trình là apache. Tôi biết tôi chỉ có thể thêm các nút web bổ sung cho đến khi việc sử dụng cpu của tôi trở nên hợp lý, nhưng tôi tưởng tượng có một số mẹo điều chỉnh nhanh có thể đi một chặng đường dài ở đây.
CPU bị trả lại từ 90 đến 100%. Mysql bị trả lại từ 5% đến 45%. Apache chiếm phần còn lại.
Hàng đầu:
top - 21:15:49 up 46 days, 20:39, 4 users, load average: 34.17, 44.62, 51.03
Tasks: 133 total, 32 running, 101 sleeping, 0 stopped, 0 zombie
Cpu(s): 90.4%us, 9.6%sy, 0.0%ni, 0.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.1%st
Mem: 8388608k total, 6116448k used, 2272160k free, 84160k buffers
Swap: 16777208k total, 68k used, 16777140k free, 3488044k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
15775 mysql 15 0 827m 153m 3712 S 43.7 1.9 0:55.04 mysqld
15911 apache 16 0 275m 10m 3872 S 24.1 0.1 0:03.15 httpd
15816 apache 16 0 288m 23m 4116 R 23.5 0.3 0:11.88 httpd
15807 apache 15 0 281m 17m 5028 S 21.5 0.2 0:11.71 httpd
15897 apache 16 0 277m 13m 4104 S 21.2 0.2 0:02.68 httpd
15834 apache 16 0 276m 11m 3916 S 20.6 0.1 0:05.22 httpd
15842 apache 16 0 275m 11m 4116 S 19.3 0.1 0:07.86 httpd
15870 apache 16 0 294m 30m 5044 R 17.4 0.4 0:06.36 httpd
15782 apache 15 0 278m 13m 4124 R 12.2 0.2 0:08.54 httpd
15819 apache 15 0 280m 17m 5016 S 11.6 0.2 0:07.01 httpd
15683 apache 16 0 288m 23m 4128 R 10.9 0.3 0:09.90 httpd
15876 apache 16 0 284m 19m 3880 R 10.6 0.2 0:04.35 httpd
15878 apache 15 0 276m 11m 4104 S 10.6 0.1 0:06.42 httpd
15913 apache 16 0 275m 10m 3920 R 9.6 0.1 0:07.98 httpd
15898 apache 16 0 280m 16m 4104 S 9.3 0.2 0:02.85 httpd
15817 apache 16 0 277m 13m 4108 S 9.0 0.2 0:05.55 httpd
15843 apache 16 0 280m 15m 4104 R 8.7 0.2 0:10.80 httpd
15812 apache 16 0 280m 16m 5012 R 8.0 0.2 0:05.18 httpd
15844 apache 16 0 281m 16m 4116 R 7.4 0.2 0:08.63 httpd
15833 apache 16 0 281m 18m 5036 R 7.1 0.2 0:04.76 httpd
15795 apache 16 0 280m 15m 3920 R 6.8 0.2 0:08.65 httpd
15704 apache 15 0 280m 16m 4096 S 6.4 0.2 0:09.06 httpd
15849 apache 16 0 280m 15m 4124 R 6.4 0.2 0:05.59 httpd
15806 apache 16 0 276m 11m 3876 S 6.1 0.1 0:10.33 httpd
15902 apache 16 0 280m 15m 3912 R 6.1 0.2 0:03.40 httpd
15688 apache 16 0 279m 14m 4116 R 5.8 0.2 0:06.07 httpd
15904 apache 16 0 280m 15m 3860 R 5.8 0.2 0:02.74 httpd
15703 apache 16 0 281m 17m 5048 R 5.1 0.2 0:03.86 httpd
15705 apache 16 0 281m 17m 5044 R 4.5 0.2 0:13.54 httpd
15821 apache 15 0 276m 11m 4072 S 4.5 0.1 0:04.24 httpd
15830 apache 16 0 278m 13m 4112 R 4.2 0.2 0:06.37 httpd
15850 apache 16 0 277m 12m 3872 R 3.9 0.2 0:04.64 httpd
15912 apache 15 0 276m 11m 3920 S 3.9 0.1 0:05.58 httpd
15804 apache 15 0 280m 15m 3932 R 3.5 0.2 0:09.13 httpd
15805 apache 16 0 281m 15m 3932 R 3.5 0.2 0:09.00 httpd
15899 apache 16 0 277m 12m 4104 R 2.6 0.2 0:03.26 httpd
15701 apache 16 0 277m 12m 3920 R 2.3 0.2 0:08.35 httpd
15781 apache 15 0 274m 9.8m 3924 S 1.9 0.1 0:10.48 httpd
15848 apache 15 0 276m 11m 3876 S 1.9 0.1 0:06.63 httpd
15901 apache 15 0 275m 10m 3916 S 1.9 0.1 0:02.18 httpd
15879 apache 16 0 280m 16m 4104 R 1.3 0.2 0:02.03 httpd
15820 apache 16 0 281m 17m 5260 R 1.0 0.2 0:05.24 httpd
httpd.conf có liên quan:
Timeout 120
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5
<IfModule prefork.c>
StartServers 8
MinSpareServers 5
MaxSpareServers 20
ServerLimit 256
MaxClients 256
MaxRequestsPerChild 4000
</IfModule>
<IfModule worker.c>
StartServers 2
MaxClients 150
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 0
</IfModule>
Ứng dụng của bạn là gì? PHP? Bạn đang sử dụng bộ đệm opcode như APC?
—
HTTP500
Vâng, PHP. Tôi có memcache và apc nhưng không sử dụng ngay bây giờ. Tôi đang xây dựng một máy chủ memcache riêng để tránh mất nó khi khởi động lại một nút.
—
Ryan
Có thể các quy trình apache của bạn đang chờ phản hồi từ MySQL và chồng chất. Bạn có phiền khi đăng my.conf của MySQL không? Ngoài ra, bạn có các bản ghi chậm được cấu hình trong MySQL không? Những gì nói với bạn, nếu bạn có chúng?
—
KM.
Bạn có làm việc với
—
grosshat
prefork
hay worker
không? Và bạn có phải đối mặt với những vấn đề như vậy sau khi phát hành mới, thay đổi mã, cập nhật máy chủ hoặc bất cứ điều gì tương tự không?