簡體   English   中英

php-fpm和dns隨機無法正常工作

[英]php-fpm and dns not work well randomly

有時我收到錯誤消息:

stream_socket_client():php_network_getaddresses:getaddrinfo失敗:名稱或服務未知

我發現問題始終出在php-fpm上,因為重新啟動php-fpm服務后,它又能正常工作了。 它在1-3個月內隨機發生。 否則,在一個php會話中多次使用名稱解析功能時,就會發生這種情況。 我的服務器是CentOS 7.5,Apache 2.4,PHP 7.x,已更新。 你知道應該是什么問題嗎?

在日志中,我僅看到一些:

警告:服務器已達到pm.max_children設置(8),請考慮將其提高

但它正常。

為什么PHP-FPM達到max_children的最常見原因是:

  • 來自客戶的大量並行請求
  • max_children的極低設置

但是,在這種情況下,我認為這是由max_children的低設置引起的。 因此,請增加它。

$ sudo vi /etc/php-fpm.d/www.conf

您可以在[php-fpm-pool-settings]部分下找到pm.max_children

要了解pm.max_children ,可以使用以下計算:

pm.max_children =專用於Web服務器的總RAM /最大子進程大小。

切記為系統上運行的額外服務留出一些RAM。

還要記住,更高並不總是更好。 如果您的PHP腳本錯誤,則這些設置將無法解決您的問題。 調整這些設置,然后查看最適合您的服務器的設置。 進行更改后,您需要重新啟動PHP-FPM服務。

$ sudo systemctl restart php-fpm

請查看本教程以獲取更多信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM