Điểm:0

Cách hiểu và tối ưu hóa bộ nhớ được sử dụng bởi từng quy trình Apache

lá cờ gb

Tôi biết phương pháp lấy bộ nhớ trung bình được sử dụng bởi mỗi quy trình apache2 bằng ps. Tôi đã quan sát nó và nó sẽ có dung lượng khoảng 18 MB (Mặc dù nó dường như đã tăng vọt trong 2 ngày qua từ 18 MB trung bình lên 25 MB).

Máy chủ của chúng tôi đang phục vụ API chấp nhận một số dữ liệu và lưu trữ dữ liệu đó trong cơ sở dữ liệu mysql. Api được viết bằng PHP. Tôi đã sử dụng các hàm mem_get_usage và mem_get_peak_usage của PHP để hiểu mức sử dụng bộ nhớ nhưng chúng không ở mức gần 18 MB.. (hầu hết hiển thị dưới 1 MB)

Vì vậy, tôi không hiểu điều gì đang tiêu tốn bộ nhớ khổng lồ này cho mỗi quy trình apache. Điều này đã trở thành một nút cổ chai vì tổng RAM của chúng tôi bị hạn chế và với mức tiêu thụ này, chúng tôi buộc phải hạn chế maxrequestworkers, điều này gây ra sự chậm trễ trong việc phục vụ khách hàng khi có lưu lượng truy cập cao.

Đầu ra điển hình từ ps:

dữ liệu www 30024 0,0 0,3 494384 26124 ? 04:27 0:03 /usr/sbin/apache2 -k bắt đầu
dữ liệu www 30077 0,0 0,3 494368 26136 ? 04:28 0:04 /usr/sbin/apache2 -k bắt đầu
dữ liệu www 30078 0,4 0,3 494360 25960 ? S 04:28 0:21 /usr/sbin/apache2 -k bắt đầu
dữ liệu www 30080 0,1 0,3 494376 26140 ? 04:28 0:05 /usr/sbin/apache2 -k bắt đầu
dữ liệu www 30115 0,2 0,3 494448 26180 ? 04:28 0:11 /usr/sbin/apache2 -k bắt đầu
dữ liệu www 30124 0,1 0,3 494376 26212 ? 04:28 0:07 /usr/sbin/apache2 -k bắt đầu
dữ liệu www 30132 0,0 0,3 494376 26108 ? 04:28 0:03 /usr/sbin/apache2 -k bắt đầu
dữ liệu www 30135 0,0 0,3 494376 26164 ? 04:28 0:04 /usr/sbin/apache2 -k bắt đầu
dữ liệu www 30219 0,0 0,3 494352 26108 ? 04:29 0:03 /usr/sbin/apache2 -k bắt đầu

Bạn có đề xuất nào về cách theo dõi mức sử dụng bộ nhớ trên mỗi quy trình apache2 và cách giảm/tối ưu hóa nó không?

John Mahowald avatar
lá cờ cn
Bạn đang sử dụng httpd MPM nào? PHP chạy như thế nào từ httpd, mod_php hoặc php-fpm hay cái gì khác?
dgarg avatar
lá cờ gb
MPM là perfork & tôi có thể thấy mod_php7 là một trong những mô-đun đã tải
dgarg avatar
lá cờ gb
nhưng tôi cũng có thể thấy php-fpm là một trong những tiến trình đang hoạt động: `root 682 0.0 0.1 368840 16140 ? Ss Jul27 0:48 php-fpm: master process (/etc/php/7.0/fpm/php-fpm.conf)` vì vậy tôi không chắc PHP đang được chạy như thế nào

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.