nginx 作為負載服務,表現為網站訪問很慢,有些文件或頁面要等待到60s才會返回,我注意到60s就是超時時間,但是超時后返回狀態是正常值200,網站可以正常打開,就是會一直等待到超時才打開,而且問題出現不定時,不定文件,靜態文件也會出現這個問題。貌似很奇葩是吧,最終查看錯誤信息沒有注意到 IPv6,導致饒了不少彎。
錯誤信息:
[error] 5292#5912: *3059 upstream timed out (10060: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond) while connecting to upstream, client: 66.249.69.219, server: xxx.com, request: "GET /shop/view.jhtml HTTP/1.1", upstream: "http://[::1]:12002/shop/view.jhtml", host: "www.xxx.com"
配置如下:
upstream zcun_pool { server localhost:12001 max_fails=1 fail_timeout=30s; server localhost:12002 max_fails=1 fail_timeout=30s; server localhost:12003 max_fails=1 fail_timeout=30s; }
發現可能是 IPv6 的問題后,改 localhost 為本地 IPv4 即可解決.....這錯誤說起來還真是低級~
upstream zcun_pool { server 127.0.0.1:12001 max_fails=1 fail_timeout=30s; server 127.0.0.1:12002 max_fails=1 fail_timeout=30s; server 127.0.0.1:12003 max_fails=1 fail_timeout=30s; }
網站訪問回復正常。