nginx bağlantı zaman aşımı ve istemci kapalı bağlantı sorunu


21

AWS üzerinde çalışan bu nginx sunucusu var ve yakın zamana kadar birkaç kullanıcı onlar erişmek için bazı 10 denemeleri yapılana kadar açılış değil web sitesi hakkında şikayet başladı kadar iyi çalışıyor.

Bu konuyu asla benim tarafımdan kopyalayamadım. Google'ın dns yani 8.8.8.8 kullanıyorum ve bir kullanıcı için aynı değiştiğinde, site iyi çalışıyordu. Şimdi bu sebep olabilir ya da bu sadece bir tesadüf olabilir.

Bunu hata günlüğünde buldum -

2014/05/29 13:46:15 [info] 6940#0: *150649 client timed out (110: Connection timed out) while waiting for request, client: xx.xxx.xxx.xx, server: 0.0.0.0:80
2014/05/29 13:46:20 [info] 6940#0: *150670 client closed connection while waiting for request, client: xx.xxx.xxx.xx, server: 0.0.0.0:80
2014/05/29 13:46:20 [info] 6940#0: *150653 client closed connection while waiting for request, client: xx.xxx.xxx.xx, server: 0.0.0.0:80
2014/05/29 13:46:20 [info] 6940#0: *150652 client closed connection while waiting for request, client: xx.xxx.xxx.xx, server: 0.0.0.0:80

Ve hatta bazı yerlerde bu -

2014/05/29 13:46:53 [info] 6940#0: *150665 client closed connection while waiting for request, client: xx.xxx.xxx.xx, server: 0.0.0.0:80
2014/05/29 13:46:53 [info] 6940#0: *150660 client xx.xxx.xxx.xx closed keepalive connection

Not- Clien't IP için xx.xxx.xxx.xx yerleştirildi

İşte nginx yapılandırması -

server {
    listen       80;
    server_name  somedomain.com  www.somedomain.com;

    #charset koi8-r;
    #access_log  /var/log/nginx/log/host.access.log  main;

    root        /var/www/somedomain/current/app/webroot;
    index       index.php index.html index.htm;

    ... couple of location rules ...
}

Gerçekten herhangi bir yardımı takdir ediyorum.

Teşekkürler


1
Bu, geliştiricilerin sunucuya değil sunucuya bağlantısında bir sorun olabilir. Sorunu yeniden oluşturamadığınız ve sunucunun kendisi bir istemci bağlantı zaman aşımı kaydettiğinden, geliştiricinin bir güvenlik duvarının arkasında olabileceğinden ve buna neden olan dahili ağ sorunları olduğundan şüphelenmemiz gerekir.
Andrew S

Keep-Alive'yi bu soruna yönelik bir test olarak devre dışı bırakmayı deneyebilirsiniz. Trafiğin web sunucunuza isabet ettiğinden emin değilim ama Keep-Alive, nginx yapılandırmanızdaki eşzamanlılık sınırına ulaşmanıza neden olabilir. Daha fazla bilgi için: nginx.com/blog/http-keepalives-and-web-performance
Alfonso

1
@NitishDhar Bu sorunu çözdünüz mü? Ben de aynı sorunla karşı karşıyayım ve sadece clueless. Eğer çözümü paylaşırsanız seviniriz.
Ethan Collins

2
Sorular: Sunucu yük dengeleyicinin veya güvenlik duvarının arkasında mı? NAT dahil mi? Sunucu ve internet arasında herhangi bir tünel var mı? Sormamın nedeni, yolun bir yerinde bir tünel olduğunda ve birisi Yol MTU keşfini kıran tüm ICMP'yi engellediğinde gerçekleşen bir şey gibi geliyor.
GeorgeB

Ayrıca, cat / proc / sys / net / ipv4 / tcp_mtu_probing çıktı
GeorgeB

Yanıtlar:


6

Nginx'ten sağladığınız günlüğe dayanarak, sunucunuz ve kullanıcılar arasındaki bağlantıların kararsız veya yavaş olduğu görülüyor. Lütfen traceroutesunucunuzdan istemcinizin IP adresini veya ağ geçidini deneyin . Ayrıca, pingistemcinizin IP adresi uzun süre paket kayıp oranını ve yanıt süresini görmek için. MTU bu sorunun başka bir kaynağı olabilir. MTU = 1500 (Mac:) ile istemcinize erişip erişemediğinizi test edin ping -D -s 1472 xx.xx.xx.xx.

BTW: Sunucunuz veya istemciniz Çin'de bulunuyorsa, bu sorun genellikle hatanız değildir. GFW'nin uluslararası bağlantı kalitesini bilerek daha da kötüleştirmek için paketleri sınırlar arasında rasgele attığı bilinmektedir.


fyi, GFW = Çin'in Büyük Güvenlik Duvarı.
Roshan

0

Bu yorumda belirtildiği gibi, büyük olasılıkla bir kullanıcı hatasıdır ve bağlantıyı kapatırlar (kasıtlı olsun ya da olmasın). Sorunu güvenilir bir şekilde yeniden oluşturmaya çalışın. Başka bir yerde olmasını engelleyin ve yalnızca bu konumsa, sonlarında sorun gidermeleri gerekir. Farklı tarayıcılardan / bilgisayarlardan deneyin ve ardından ağ güvenilirliğini test edin.


0

Bu günlük girişleri, bir sunucuyu taramak için OpenVAS gibi araçları kullandığımda görünen girişlere benzer. Bu araçlar kötü bağlantılar kurar, yavaşlar veya kötü çalışırlar; nginx sadece bazı bağlantıların iyi oynadığını bildirmiyor. Tüm trafik aynı kaynaktan geliyorsa ve hızlıysa ve erişim günlüğünde eşleşecek başka yasal istekleri yoksa, muhtemelen sadece bir bot tarayıcısı türüdür.

Bu tarayıcılar ayrıca uygulamanızı yük altında tutabilir ve bu da diğer yasal trafik için yavaşlatabilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.