前幾天,公司的網站在尖鋒時刻,不時會從 Cloudflare 吐出 502(Bad Gateway),查看 Web 伺服器、DB 伺服器的 CPU、記憶體全都沒有過載的情況,把調查對象轉往 Nginx
,從錯誤日誌當中看到了下面這個錯誤訊息:
99: Cannot assign requested address
前幾天,公司的網站在尖鋒時刻,不時會從 Cloudflare 吐出 502(Bad Gateway),查看 Web 伺服器、DB 伺服器的 CPU、記憶體全都沒有過載的情況,把調查對象轉往 Nginx
,從錯誤日誌當中看到了下面這個錯誤訊息:
99: Cannot assign requested address
之前的文章有介紹到 SSR(Server Side Rendering)的服務 - rendertron,在官方文件有提到,如果我們轉發的網址有帶 Query String 的話,需要對 Query String 做 URL Encode,我的轉發邏輯是寫在 Nginx,所以這件事情最好就由 Nginx 來負責。
Nginx 預設每個 Worker Process 的最大連線數是 1024,這個對我們網站是不夠用的,那不夠用就會收到 socket() failed (24: Too many open files)
的錯誤訊息,於是就動手調整 Nginx 的參數,就在調整其中一個參數 worker_rlimit_nofile
的過程中,出現了下面的錯誤訊息:
setrlimit(RLIMIT_NOFILE, 65535) failed (1: Operation not permitted)