คำถามติดแท็ก keepalive

4
ฉันจะทำให้ cURL ใช้ keepalive จากบรรทัดคำสั่งได้อย่างไร
ฉันพยายามตรวจสอบว่ามีการใช้การเชื่อมต่อ HTTP แบบถาวรในระหว่างการสื่อสารกับเว็บเซิร์ฟเวอร์ Tomcat ที่ฉันใช้งานอยู่ ขณะนี้ฉันสามารถดึงทรัพยากรบนเซิร์ฟเวอร์ของฉันจากเบราว์เซอร์ (เช่น Chrome) และตรวจสอบโดยใช้ netstat ว่าการเชื่อมต่อได้ถูกสร้างขึ้นแล้ว: # visit http://server:8080/path/to/resource in Chrome [server:/tmp]$ netstat -a ... tcp 0 0 server.mydomain:webcache client.mydomain:55502 ESTABLISHED อย่างไรก็ตามถ้าฉันใช้ curl ฉันไม่เคยเห็นการเชื่อมต่อบนเซิร์ฟเวอร์ใน netstat [client:/tmp]$ curl --keepalive-time 60 --keepalive http://server:8080/path/to/resource ... [server:/tmp]$ netstat -a # no connection exists for client.mydomain ฉันได้ลองใช้คำสั่ง curl ต่อไปนี้: curl …
36 http  tcp  curl  netstat  keepalive 


3
ฉันควรเปิดใช้งาน KeepAlive ใน Apache2 หรือไม่
ในการติดตั้งเริ่มต้นใด ๆ Apache 2 มาพร้อมกับ keepAlive แต่เมื่อดูที่เซิร์ฟเวอร์อื่นโมดูล keepAlive ก็เปิดอยู่ ดังนั้นฉันจะรู้ได้อย่างไรว่า keepAlive นั้นเหมาะกับฉันหรือไม่ ฉันจะหาตัวอย่างที่ดีเกี่ยวกับการกำหนดค่านี้ได้จากที่ใด

3
หมดเวลาการเชื่อมต่อ nginx & ปัญหาการเชื่อมต่อลูกค้าปิด
ฉันมีเซิร์ฟเวอร์ nginx นี้ทำงานบน AWS & มันทำงานได้ดีจนกระทั่งเมื่อไม่นานมานี้เมื่อมีผู้ใช้สองคนเริ่มบ่นเกี่ยวกับเว็บไซต์ที่ไม่เปิดจนกว่าพวกเขาจะพยายามเข้าถึงมัน 10 ครั้ง ฉันไม่สามารถแก้ไขปัญหาได้จากด้านข้างของฉัน ฉันกำลังใช้ DNS ของ google เช่น 8.8.8.8 และเมื่อฉันเปลี่ยนเหมือนกันสำหรับหนึ่งในผู้ใช้ไซต์ทำงานได้ดี ตอนนี้อาจเป็นเหตุผลหรือนี่อาจเป็นเพียงเรื่องบังเอิญ ฉันพบสิ่งนี้ในบันทึกข้อผิดพลาด - 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 …

2
ความแตกต่างระหว่าง keepalive และ heartbeat คืออะไร?
ฉันต้องการจัดโครงสร้างเซิร์ฟเวอร์คลัสเตอร์ที่มีความพร้อมใช้งานสูง ตอนนี้ฉันต้องการทราบรายละเอียดเกี่ยวกับ keepalive และ heartbeat ความแตกต่างระหว่างทั้งสองคืออะไรและวิธีเลือกอย่างใดอย่างหนึ่ง


1
ควร "keepalive_timeout" ถูกลบออกจากการกำหนดค่า Nginx หรือไม่
การกำหนดค่า / การปรับให้เหมาะสมที่ดีกว่าคืออะไร: เพื่อ จำกัดkeepalive_timeoutหรือให้ Nginx ฆ่าการเชื่อมต่อแบบ keepalive ด้วยตัวเองอย่างชัดเจน? ฉันเห็นคำแนะนำที่ขัดแย้งกันสองข้อเกี่ยวกับkeepalive_timeoutคำสั่งของ Nginx พวกเขามีดังนี้: # How long to allow each connection to stay idle; longer values are better # for each individual client, particularly for SSL, but means that worker # connections are tied up longer. (Default: 65) keepalive_timeout 20; และ # …
14 nginx  keepalive 

8
ให้การเชื่อมต่อ ssh ยังมีชีวิตอยู่และคงอยู่ในขณะที่สลับการเชื่อมต่อเครือข่าย
สถานการณ์: ที่โต๊ะทำงานของฉันพร้อมกับแลปท็อปเชื่อมต่อกับอีเธอร์เน็ตและเชื่อมต่อกับเซิร์ฟเวอร์ระยะไกลผ่าน SSH ต้องการย้ายไปที่ด้านอื่น ๆ ของสำนักงานด้วยแล็ปท็อปและเปลี่ยนเป็น WiFi โดยไม่ขัดจังหวะการเชื่อมต่อ SSH ฉันลองแล้ว: กำลังเชื่อมต่อกับ WiFi ก่อนจากนั้นยกเลิกการเชื่อมต่ออีเธอร์เน็ต และตัดการเชื่อมต่ออีเธอร์เน็ตก่อนจากนั้นเชื่อมต่อกับ WiFi ทั้งวิธีการทำงาน ยังพยายามเมื่อใช้เซิร์ฟเวอร์ Ubuntu และ OS X พร้อมทั้งตัวเลือกระบบปฏิบัติการทั้งสำหรับลูกค้า ไม่มีโชค. ดูเหมือนว่าฉันต้องการวิธีที่จะบอกการเชื่อมต่อ SSH ของฉันว่าควรเริ่มใช้อินเทอร์เฟซเครือข่ายที่เชื่อมต่อใหม่แทนอินเทอร์เฟซเก่าที่ถูกตัดการเชื่อมต่อ ความคิดใด ๆ ฉันรู้ว่าฉันสามารถอยู่บน WiFi ได้ทั้งวัน แต่ฉันไม่ต้องการทำเช่นนั้น ฉันยังตระหนักว่าฉันสามารถทำงานได้จากภายในเซสชันหน้าจอบนเซิร์ฟเวอร์ระยะไกลจากนั้นเชื่อมต่อกับเซสชันหน้าจอนั้นอีกครั้งหลังจากเปลี่ยนอินเตอร์เฟส แต่ฉันไม่ต้องการทำเช่นนั้น ตัวอย่างเช่นฉันอาจกำลังไพพ์คำสั่งขนาดใหญ่เช่นดัมพ์ฐานข้อมูลผ่าน SSH หรือฉันอาจมีไฟล์ที่เปิดผ่าน SSHFS หรือฉันอาจต้องการหลีกเลี่ยงความยุ่งยากในการเชื่อมต่ออีกครั้ง

1
วิธีการปรับ nginx keepalive_timeout?
ฉันใช้ nginx พร้อมกับ php-fpm ไปยังเซิร์ฟเวอร์ไซต์ที่ใช้งาน mysql ไม่ว่าง ขณะนี้ฉันกำลังใช้keepalive_timeout = 5งานอยู่ แต่ฉันไม่มีความคิดที่ชัดเจนเกี่ยวกับวิธีการปรับอย่างเหมาะสมที่สุด ขอบคุณคำแนะนำของคุณ
12 nginx  keepalive 

1
TCP Keepalive และไฟร์วอลล์กำลังฆ่าเซสชันที่ไม่ทำงาน
ในไซต์ลูกค้าทีมเครือข่ายเพิ่มไฟร์วอลล์ระหว่างไคลเอนต์และเซิร์ฟเวอร์ นี่ทำให้การเชื่อมต่อที่ไม่ได้ใช้งานถูกตัดการเชื่อมต่อหลังจากเวลาที่ไม่ได้ใช้งานประมาณ 40 นาที คนในเครือข่ายบอกว่าไฟร์วอลล์ไม่มีการหมดเวลาการเชื่อมต่อที่ไม่ได้ใช้งาน แต่ความจริงก็คือการเชื่อมต่อที่ไม่ได้ใช้งานเสีย เพื่อให้ได้สิ่งนี้เราต้องกำหนดค่าเซิร์ฟเวอร์ (เครื่อง Linux) ที่เปิดใช้ TCP keepalives ด้วย tcp_keepalive_time = 300, tcp_keepalive_intvl = 300 และ tcp_keepalive_probes = 30000 วิธีนี้ใช้งานได้และการเชื่อมต่อสามารถใช้งานได้หลายวัน อย่างไรก็ตามเราต้องการให้เซิร์ฟเวอร์ตรวจจับไคลเอนต์ที่ตายแล้วและฆ่าการเชื่อมต่อดังนั้นเราจึงเปลี่ยนการตั้งค่าเป็นเวลา = 300, intvl = 180, โพรบ = 10 โดยคิดว่าถ้าไคลเอนต์ยังมีชีวิตอยู่เซิร์ฟเวอร์จะสอบสวนทุก ๆ 300 วินาที (5 นาที) และไคลเอนต์จะตอบสนองด้วย ACK และนั่นจะทำให้ไฟร์วอลล์ไม่สามารถมองเห็นสิ่งนี้ว่าเป็นการเชื่อมต่อที่ไม่ได้ใช้งานและฆ่ามัน หากไคลเอ็นต์ตายหลังจากผ่านไป 10 โพรบเซิร์ฟเวอร์จะยกเลิกการเชื่อมต่อ ด้วยความประหลาดใจของเราการเชื่อมต่อที่ไม่ทำงาน แต่ยังมีชีวิตถูกฆ่าหลังจากประมาณ 40 นาทีเหมือนเมื่อก่อน Wireshark …

2
ผลกระทบของการเชื่อมต่อ Close vs Keep-alive
ฉันกำลังกำหนดค่าเซิร์ฟเวอร์ของเราและเนื่องจากลักษณะของ load balancer ของเราเราจึงไม่สามารถส่งส่วนหัวที่คงอยู่ต่อไปได้ ฉันกำลังพยายามหาผลกระทบของการส่งส่วนหัวเหล่านี้ไปยังผู้ใช้ปลายทางและเซิร์ฟเวอร์ ทั้งสองจะสังเกตเห็นอะไร?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.