Linux17

จาก Wiki Opensource

บันทึกนี้ปรับปรุงล่าสุดเมื่อวันที่ 3-12-2555

ดูแลโดย WIBOON


Linux 17: การดูข้อมูลพื้นฐานที่มีผลต่อการทำงานของ server


  • แนะนำข้อมูลหลักๆที่มีแสดงถึงประสิทธิภาพในการทำงานของ server


รายละเอียด

หน่วยความจำ

  1. คำสั่ง free ใช้ดูหน่วยความจำของ server ลองใช้คำสั่งว่า free -m
    การใส่ -m หมายถึงให้แสดงผลเป็นหน่วย MB ได้ตัวอย่างผลลัพธ์ว่า
    total used free shared buffers cached
    Mem: 998 988 10 0 166 623
    -/+ buffers/cache: 197 801
    Swap: 3814 39 3775
  2. ดูบรรทัด Mem:
    ช่อง total ตัวอย่างนี้คือ 998 หมายถึงมีหน่วยความจำ RAM ทั้งหมด 998 MB
  3. ดูบรรทัด -/+ buffers/cache:
    ช่อง free ตัวอย่างนี้คือ 801 หมายถึงขณะนี้ยังมี RAM เหลือให้ใช้งานได้อีก 801 MB
  4. ดูบรรทัด Swap:
    ช่อง used ตัวอย่างนี้คือ 39 หมายถึงใช้ Swap ไป 39 MB
    ค่า used Swap นี้บอกถึงว่าเคยมีอาการ RAM ไม่พอใช้ แล้วมายืมตัวเลข hard disk ใช้งาน
    ดังนั้นค่านี้ยิ่งน้อยยิ่งดี ถ้าเป็นเลข 0 เลยก็จะดีมาก แสดงว่ายังไม่เคยใช้ RAM หมดเลย
    หากค่า used Swap มีค่าสูง และ free buffers/cache มีเหลือค่าต่ำๆ แสดงว่า RAM ไม่พอใช้
    ให้เพิ่ม RAM เป็นจำนวนมากกว่าค่า used Swap ก็ได้ server ที่ทำงานได้เร็วขึ้นอย่างเห็นได้ชัด

ความแรงของเซิร์ฟเวอร์

  1. คำสั่ง vmstat ใช้ดูภาพรวมการทำงานของ server ลองใช้คำสั่งว่า vmstat
    ผลเป็นค่าเฉลี่ยตั้งแต่ตอนบูท serverได้ตัวอย่างผลลัพธ์ว่า
    procs -------------memory-------------- ---swap-- -----io---- -system- ------cpu------
    r b swpd free buff cache si so bi bo in cs us sy id wa
    2 0 35780 65364 4032 117616 5 12 86 55 94 295 6 10 83 0
  2. ดูช่องท้ายสุด ------cpu------ ค่า wa
    ตัวอย่างนี้คือ 0 หมายถึงเปอร์เซ็นต์เวลาที่ CPU สูญเสียไปกับการรอเขียน hard disk
    ค่าเป็น 0 ถือว่าดีมาก หากค่ามากขึ้นก็แสดงว่าแย่ลง โดยทั่วไปอาจมีตัวเลขขึ้นสูงบ้างเป็นระยะเวลาสั้นๆ
    แล้วจะค่อยๆทยอยลดลงมาเรื่อยๆจนเหลือสักประมาณเลข 2 ถือว่าเป็นปรกติ
    แต่ถ้าขึ้นสูงตลอดเวลาก็ควรพิจารณาจัดหา hard disk ใหม่ที่เร็วกว่าเดิม หรือ
    แก้ที่ต้นเหตุอื่นเช่นเพิ่ม RAM เนื่องจาก RAM ไม่พอ ระบบจึงต้อง Swap มาเขียนบน hard disk
  3. ดูช่องก่อนท้ายสุด ------cpu------ ค่า id
    ตัวอย่างนี้คือ 83 หมายถึงเปอร์เซ็นต์เวลาที่ CPU ว่างงาน
    ค่ายิ่งมากยิ่งดีแสดงว่าแสดงว่า CPU ว่างงาน หากตัวเลขเหลือเพียง 70 จะเห็นว่า server ทำงานช้าลงอย่างเห็นได้ชัด
    การแก้ไขคือต้องเปลี่ยนเครื่องใหม่ให้ CPU แรงกว่าเดิม
  4. ลองใช้คำสั่ง vmstat 1 2
    ผลคือข้อมูลเฉลี่ยในบรรทัดแรก และข้อมูลปัจจุบันในบรรทัดที่ 2

ภาระงานของเซิร์ฟเวอร์

  1. คำสั่ง uptime เป็นคำสั่งที่ใช้ดูค่า load การทำงานของระบบ ตัวอย่างว่า
    17:19:08 up 26 days, 1:29, 1 user, load average: 0.74, 0.51, 0.44
  2. ดูข้อมูลหลังข้อความ load average:
    ตัวเลขแรกคือ load เฉลี่ยใน 1 ช่วงนาทีที่ผ่านมานี้
    ค่าของ load ตัวนี้แสดงการทำงานรวมๆของระบบ ไม่สามารถแยกเป็นส่วนต่างของระบบ
    ดังนั้นจึงดูค่า load นี้เป็นภาพรวมๆ ถ้าตัวเลขสูง จะรู้สึกว่า server ทำงานช้าลงอย่างรู้สึกได้
    แต่จะเป็นตัวเลขขนาดไหนก็ขึ้นกับบริการของ server นั้น บาง server ตัวเลข 10.0 ยังเป็นปรกติดี แต่บาง server เกิน 2.0 ก็อืดแล้ว
    ให้สังเกตเองว่าค่า load นี้ปรกติแล้วควรเป็นเท่าไหร่ และเมื่อไหร่ server จะเริ่มอืด ไม่มีสูตรสำเร็จ