เครือข่ายรออยู่ที่ใดใน 'บนสุด'


9

หากด้านบนแสดงว่ามีโหลดสูงและคุณไม่รู้ว่ากระบวนการที่ทำให้เกิดเวลาประมวลผลหรือกำลังทำเน็ตเวิร์ก i / o (ไม่ใช่ i / o ในพื้นที่) คุณจะทราบได้อย่างไร

บนเซิร์ฟเวอร์ของเราฉันเห็นค่าสูงสำหรับการโหลด แต่เมื่อรวมกับ 60% -70% ว่างและผู้ใช้ประมาณ 25% ฉันต้องการทราบวิธี interpet ค่าดังกล่าว แต่บนอินเทอร์เน็ตฉันมักจะอ่านว่าคุณสามารถใช้ iostat เพื่อดูว่ากระบวนการ trashing ดิสก์ของคุณ แต่ฉันรู้แล้วว่านั่นไม่ใช่กรณี กระบวนการที่เป็นปัญหาไม่ได้มีปัญหาในการทำงาน แต่ก็ยังโหลดสูง

ดังนั้นมีวิธีการหาข้อมูลเพิ่มเติมซึ่งส่วนหนึ่งเกิดจากการรอเครือข่ายและส่วนที่เกิดจากเวลาประมวลผลจริง? และความหมายของ 'ว่าง' อยู่ด้านบนคืออะไร?

เพื่อความชัดเจน: เมื่อโหลดฉันหมายถึงตัวเลข 3 ตัวที่บ่งบอกถึงกระบวนการเข้าคิวโดยเฉลี่ยต่อหนึ่งคอร์ เครื่องนี้มี 8 คอร์และจำนวนเพิ่มขึ้นถึง 25 ดังนั้นนั่นจึงเป็นภาระ 2.5 แกนต่อแกน


คุณกำลังเรียก "โหลด" อะไร: ใช้ CPU หรือค่า 3 "โหลดเฉลี่ย" (เห็นในuptimeเอาต์พุต)
spuk

1
คำถามไม่มีเหตุผล ... กำลังรอเครือข่าย IO ไม่ได้ใช้เวลา cpu ใด ๆ
psusi

2
ฉันรักยูทิลิตี้htopสำหรับการมองเข้าไปในกระบวนการ โดยเฉพาะอย่างยิ่งมันช่วยให้คุณสามารถเลือกกระบวนการและจากนั้นใช้lคำสั่งมันจะแสดงไฟล์ทั้งหมดที่เปิดอยู่โดยใช้lsofรวมถึงIPv4และIPv6อุปกรณ์สตรีมและ หากคุณstraceติดตั้งบนกล่องของคุณคุณสามารถทำการโทรของระบบและการดีบักสัญญาณได้เช่นกัน ไม่ใช่คำตอบที่แน่ชัด แต่เป็นอีกเครื่องมือหนึ่งที่ฉันควรพิจารณาสำหรับสิ่งที่คุณพยายามตรวจสอบ
111 ---

ฉันหมายถึงตัวเลข 3 ตัว ตามที่ฉันเข้าใจพวกเขาถูกเรียกว่า "โหลด" หรือฉันผิดที่นี่ พวกเขาแสดงถึงจำนวนของกระบวนการในคิวที่สามารถดำเนินการได้ แต่นั่นรวมถึงกระบวนการที่มีเครือข่ายรอหรือไม่รวมกระบวนการหรือไม่?
Jan

และคุณนิยามว่า "สูง" อะไร ค่าเฉลี่ยการโหลดจะไม่ถูกปรับอัตราส่วนสำหรับแกน เช่นระบบที่มีค่าเฉลี่ยการโหลด 1 และ 4 คอร์คือ 1 / 4th เป็นโหลดเป็นระบบที่มีค่าเฉลี่ยการโหลด 1 และ 4 แกนเท่านั้น โหลดเฉลี่ยเป็นมากจำนวนหยาบ
bahamat

คำตอบ:


3

หากด้านบนแสดงว่ามีโหลดสูงและคุณไม่รู้ว่ากระบวนการที่ทำให้เกิดเวลาประมวลผลหรือกำลังทำเน็ตเวิร์ก i / o (ไม่ใช่ i / o ในพื้นที่) คุณจะทราบได้อย่างไร

เครือข่าย I / O ไม่ได้ถูกนำมาพิจารณาในการวัด Linux iowait เว้นแต่ว่ามันเป็นส่วนหนึ่งของการทำธุรกรรม NFS ซึ่งในกรณีนี้จะถือว่าเป็นดิสก์ I / O

ดังนั้นมีวิธีการหาข้อมูลเพิ่มเติมซึ่งส่วนหนึ่งเกิดจากการรอเครือข่ายและส่วนที่เกิดจากเวลาประมวลผลจริง?

นอกการรอ NFS สมมุติไม่มีส่วนใดที่โหลดเฉลี่ยทั้งหมดถูกรอโดยเครือข่าย

และความหมายของ 'ว่าง' อยู่ด้านบนคืออะไร?

นั่นหมายถึงเปอร์เซ็นต์เวลาที่ CPU ไม่ได้อยู่ในสถานะอื่น (ผู้ใช้, ระบบ, nice, iowait, การขัดจังหวะฮาร์ดแวร์, การขัดจังหวะโดยซอฟต์แวร์, ถูกขโมย) รวมถึงเครือข่ายที่รอ เมื่อไม่มีการใช้งาน CPU จะไม่ทำอะไรเลย โปรดทราบว่า iowait นั้นเป็นเวลาที่ไม่ได้ทำงานเนื่องจาก CPU ไม่ได้ทำอะไรเช่นกัน


ขอบคุณสำหรับคำตอบ. ดังนั้นในสถานการณ์ของฉันที่ฉันเห็นค่าว่างสูง (60% - 70%) และสถานะผู้ใช้ต่ำ (ประมาณ 25%) และ iowait ต่ำนี่อาจหมายความว่าเซิร์ฟเวอร์กำลังรอทรัพยากรเครือข่ายถ้าฉันเข้าใจคุณอย่างถูกต้อง
มกราคม

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