การตรวจสอบสถานะการทำงานทุกวินาที - ไม่ดีสำหรับเซิร์ฟเวอร์หรือไม่


11

ฉันสงสัยว่ามีข้อได้เปรียบในการตรวจสอบว่าเซิร์ฟเวอร์พร้อมใช้งาน "คำขอ HTTP GET" ทุกวินาทีหรือไม่

เซิร์ฟเวอร์ใดสามารถจัดการได้


อีกตัวเลือกหนึ่งที่จะทำตรงข้าม: มากกว่าการตรวจสอบเซิร์ฟเวอร์จากภายนอกตรวจสอบเซิร์ฟเวอร์จากภายในเช่นกับru-on.com โดยทั่วไปคุณติดตั้งสคริปต์ขนาดเล็กบนเซิร์ฟเวอร์ของคุณซึ่งส่ง Ping เซิร์ฟเวอร์อื่นบ่อยครั้งมากดังนั้นคุณจึงสามารถตรวจสอบสถานะการออนไลน์โดยไม่ทำให้เว็บเซิร์ฟเวอร์ของคุณหนักขึ้น
Maxim Zaslavsky

3
@ Maxim มีปัญหาหลายประการกับข้อเสนอแนะของคุณ ก่อนอื่นไม่ตรวจสอบว่าบริการ HTTP กำลังทำงานอยู่บนเซิร์ฟเวอร์ ประการที่สองมีปัญหาเกิดขึ้นเมื่อเซิร์ฟเวอร์ไม่ทำงาน ที่ยังต้องติดตาม นอกจากนี้ผลลัพธ์ที่เหมือนกันอาจเกิดขึ้นได้ง่ายๆจากเครื่องในท้องถิ่น
John Gardeniers

คำตอบ:


26

เซิร์ฟเวอร์ "ใด ๆ " สามารถจัดการได้หรือไม่ อาจ.

คุณควรทำอย่างไร อาจจะไม่.

ถามตัวเองคำถามสองสามข้อ:

  1. คุณจะตอบสนองต่อไฟดับเร็วแค่ไหน?
  2. โดยปกติคุณจะได้รับจำนวนหน้าที่มีการเปิดต่อวินาที
  3. คุณยินดีที่จะเห็นข้อผิดพลาดติดต่อกันเป็นจำนวนเท่าใดก่อนเรียกมันว่า "ลง" และส่งการแจ้งเตือน
  4. คุณมี SLA กับลูกค้าภายในหรือภายนอกที่ต้องได้รับเกียรติหรือไม่
  5. จากคำถามข้างต้นสิ่งที่ดูเหมือนว่าการตรวจสอบที่เหมาะสมและเวลาตอบสนอง?

ตอนที่ฉันเรียนรู้โปรแกรมเป็นครั้งแรกฉันตัดสินใจว่าจะทำนาฬิกาจับเวลา ในที่สุดเมื่อฉันได้รับแอปพลิเคชันที่ใช้งานได้ฉันสังเกตเห็นว่าการใช้งาน CPU บนแล็ปท็อปของฉันอยู่ที่ 100% ทุกครั้งที่ฉันใช้งาน

ลูปการดำเนินการของฉันไม่มีรอบการรอ มันก็ยังคงดำเนินการมากกว่าฟังก์ชั่นเวลา

ในวันนั้นฉันเรียนรู้บทเรียนที่มีค่า: ไม่มีสิ่งใดที่จะวัดได้อย่างแม่นยำอย่างไม่สิ้นสุด


6

ในขณะที่ฉันเหมือนกับคนอื่น ๆ ทุกคนถามถึงเหตุผลที่ต้องการตรวจสอบบ่อยๆฝ่ายเทคนิคเป็นเรื่องที่ไม่ใช่ประเด็น หนึ่ง GET ที่ขอทุก ๆ วินาทีนั้นน่ากลัวจริง ๆ เมื่อเปรียบเทียบกับการโหลดหน้าเว็บทั่วไป

เซิร์ฟเวอร์ของคุณสามารถจัดการกับมันได้หรือไม่ เราไม่มีอะไรที่จะตอบคำถามดังกล่าว แต่ถ้าเซิร์ฟเวอร์ของคุณมีปัญหาในการจัดการมันฉันขอแนะนำว่ามันจะไม่เพียงพอสำหรับสิ่งที่มันกำลังให้บริการ


3

Nagios หรือ munin สามารถจัดการกับการทดสอบได้ทุก ๆ วินาที แต่มันก็ค่อนข้างน่าหลงไหล มีเหตุผลที่คุณต้องตรวจสอบบ่อยๆหรือไม่? หากเซิร์ฟเวอร์ของคุณไม่เสถียรคุณอาจมีปัญหามากขึ้น


1

ซอฟต์แวร์ตรวจสอบเพื่อการพาณิชย์ส่วนใหญ่เสนอช่วงเวลา 1 นาทีหรือ 5 นาทีตามค่าเริ่มต้น นั่นดูเหมือนจะเป็นช่วงเวลาตรวจสอบที่ดี


ยกตัวอย่างเช่น Pingdom อนุญาตให้คุณตั้งค่าช่วงเวลาและจากนั้นในการตรวจสอบการหยุดทำงานครั้งแรกให้เพิ่มความถี่ที่จะส่ง Ping เซิร์ฟเวอร์เพื่อดูว่ามันสำรองไว้หรือไม่
Ankur Banerjee

>, เพิ่มความถี่ .. => แต่ขั้นต่ำยังอยู่ 1 นาทีหรือ?
sapguy

ในบัญชีฟรีฉันคิดว่าต่ำสุดที่ Pingdom เสนอให้คือ 1 นาที ฉันไม่มีบัญชีพรีเมี่ยมดังนั้นฉันจึงไม่สามารถบอกได้ว่าพวกเขามีตัวเลือกสำหรับการตรวจสอบบ่อยขึ้นหรือไม่
Ankur Banerjee

1

ไม่มีอะไรผิดปกติกับการตรวจสอบเซิร์ฟเวอร์ทุก ๆ วินาทีมันไม่ได้มีประสิทธิภาพมากนักโดยเฉพาะอย่างยิ่งกับเซิร์ฟเวอร์ที่มีโหลดสูงซึ่งแบบสอบถาม Apache อาจค้างอยู่สองสามวินาทีทำให้คำขอของคุณสำรองหรือออกการแจ้งเตือนที่ผิดพลาดในช่วงเวลานั้น ไม่ 'ผิด' การตรวจสอบหนึ่งวินาทีจะไม่ทำให้คุณตอบสนองได้เร็วขึ้นและใน 99.9% ของทุกสถานการณ์การตรวจสอบ 10 หรือ 30 วินาทีนั้นสำคัญมาก


0

ฉันเห็นด้วย 100% กับโจเซฟที่นี่ หากคุณยังต้องการทำการตรวจสอบแบบเรียลไทม์คุณสามารถพิจารณาดมกลิ่นบันทึกของเว็บเซิร์ฟเวอร์สำหรับข้อผิดพลาดของเซิร์ฟเวอร์และไม่มีรายการใหม่ในบันทึกเป็นระยะเวลาหนึ่ง มันจะไม่ทำให้โหลดบนเซิร์ฟเวอร์ แต่การเรียกใช้การแจ้งเตือนตามสิ่งนี้เป็นสิ่งที่ท้าทาย :)


0

ความละเอียด 1 วินาทีนั้นสูงมากและอาจไม่จำเป็น อย่างไรก็ตามฉันชอบ collectd เพราะมันถูกออกแบบมาเพื่อความละเอียดที่สูงขึ้นมาก (10 วินาทีตลอดไป) จากนั้นเครื่องมือ OSS อื่น ๆ เช่น munin (5 นาที)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.