Tôi có máy chủ apache được cấu hình với MPM worker như sau:
<IfModule mpm_worker_module>
ServerLimit 20
ThreadLimit 50
StartServers 3
MaxClients 1000
MinSpareThreads 50
MaxSpareThreads 200
ThreadsPerChild 50
MaxRequestsPerChild 10000
</IfModule>
Máy chủ mất khoảng 2 triệu yêu cầu mỗi ngày. Khi các yêu cầu đến, máy chủ apache sẽ ngừng chấp nhận kết nối mới (trình duyệt không thể kết nối). Và quá trình sẽ vẫn còn trong danh sách quá trình. Việc sử dụng bộ nhớ là khoảng 10% và CPU là 0%. Có vẻ như máy chủ apache không thể tái chế các quy trình khi cần.
Tôi đã tìm thấy một cái gì đó liên quan đến sự cố trong nhật ký lỗi:
[Mon Aug 15 12:36:24 2011] [error] child process 11444 still did not exit, sending a SIGKILL
[Mon Aug 15 12:36:24 2011] [error] child process 12090 still did not exit, sending a SIGKILL
[Mon Aug 15 12:36:24 2011] [error] child process 10698 still did not exit, sending a SIGKILL
[Mon Aug 15 12:36:24 2011] [error] child process 12144 still did not exit, sending a SIGKILL
[Mon Aug 15 12:36:24 2011] [error] child process 12032 still did not exit, sending a SIGKILL
[Mon Aug 15 12:36:24 2011] [error] child process 10699 still did not exit, sending a SIGKILL
[Mon Aug 15 12:36:25 2011] [notice] caught SIGTERM, shutting down
[Mon Aug 15 12:37:31 2011] [notice] mod_python: Creating 8 session mutexes based on 20 max processes and 50 max threads.
[Mon Aug 15 12:37:31 2011] [notice] mod_python: using mutex_directory /tmp
[Mon Aug 15 12:37:31 2011] [notice] Apache/2.2.17 (Ubuntu) mod_python/3.3.1 Python/2.7.1+ mod_ssl/2.2.17 OpenSSL/0.9.8o configured -- resuming normal operations
[Mon Aug 15 15:36:46 2011] [error] server is within MinSpareThreads of MaxClients, consider raising the MaxClients setting
[Mon Aug 15 15:38:48 2011] [error] server reached MaxClients setting, consider raising the MaxClients setting
[Mon Aug 15 16:17:31 2011] [warn] child process 766 still did not exit, sending a SIGTERM
[Mon Aug 15 16:17:31 2011] [warn] child process 767 still did not exit, sending a SIGTERM
Bất kỳ ý tưởng? Cảm ơn!
bạn đang giữ những thiết lập nào? Bạn có thực hiện một số loại bỏ phiếu dài với ứng dụng của bạn?
—
regilero