จากตอนที่แล้วที่สรุปขั้นตอนในการ Tuning ไป คราวนี้ก็เริ่มต้นที่การ Monitor กันก่อนนะครับ
Performance Monitor
Performance Monitor เป็นเครื่องมือที่มีประสิทธิภาพสูง แต่ฟรี ที่มีอยู่ใน windows อยู่แล้ว โดยส่วนใหญ่แล้วเรามักจะใช้ในการตรวจสอบ CPU, Disk, Memory, Network และอื่นๆ สำหรับโปรแกรมเมอร์บางท่านอาจจะยังไม่เคยใช้ เพราะว่าเครื่องมือตัวนี้ Admin หรือ DBA มักจะเข้ามาใช้เพื่อ Monitor ระบบอยู่แล้วครับ
ในตอนนี้ผมจะลองแสดงให้เห็นวิธีการใช้งานเพื่อหา Bottle Neck อย่างง่ายๆ ดูนะครับ
เริ่มจากเปิดโปรแกรม Performance Monitor ขึ้นก่อน โดยโปรแกรมนี้จะอยู่ใน Administrative Tools ซึ่งปกติจะมีอยู่ใน Windows ทุกเวอร์ชั่นครับ
จะพบหน้าจอโปรแกรมดังรูปถัดไป
เราจะเห็น counter ที่ได้เพิ่มเข้ามาแล้วได้แก่
1) % Processor Time – เป็น counter ที่ใช้วัดการทำงานของ CPU ว่ามีการทำงานเป็นอย่างไร โดยปกติแล้วเราจะดูที่ค่า Average ถ้าค่า average ไม่เกิน 80% ก็ถือว่ารอดครับ แต่ถ้าเกินกว่านี้ แสดงว่า CPU ทำงานไม่ทันน่ะครับ อาจจะแก้ปัญหาโดยการเพิ่ม CPU ให้มากขึ้นหรือว่าเปลี่ยน CPU น่ะครับ
2) Avg. Disk Queue Length – ถ้า counter ตัวนี้ขึ้นสูง แสดงว่า disk ทำงานไม่ทัน อาจจะแก้ปัญหาโดยการเพิ่ม disk RAID หรือไม่ก็หาวิธีการเพิ่มประสิทธิภาพของ Database ให้ติดต่อ Disk น้อยลง โดยอาจจะใช้ Index, กระจาย database file ไปหลายๆ disk, การใช้ Cache เป็นต้น
3) Page/Sec – ปกติ counter ตัวนี้จะไม่เกิดขึ้นสูงในกรณ๊ที่ Physical Memory ที่มีอยู่เพียงพอ แต่ถ้า counter ตัวนี้เกิดขึ้นสูงแสดงว่า Memory ไม่พอ อาจจะต้องเพิ่ม Physical Memory ขึ้นอีก
แต่การดูในแต่ละ counter จะต้องดูตอนที่เกิด load จริงๆ ถ้าเป็นไปได้ และอาจจะต้องดูหลายๆ counter ประกอบด้วยครับ เหมือนกับดูอาการทางของผู้ป่วยเมื่อไปพบแพทย์ แต่ทางในปฏิบัติแล้ว เราอาจจะวิธีเขียน script เพื่อทดสอบก็ได้ครับ เพื่อให้ได้ load คงที่ทุกครั้งที่ทดสอบ ไม่เช่นนั้นแล้ว การทดสอบก็จะไม่สามารถวัดอะไรได้แน่นอนครับ
นอกจาก counter ที่มีอยู่ใน default แล้ว เราสามารถที่จะเพิ่มเติม counter ได้อีกโดย click ขวาเพื่อเลือกเมนู Add Counter ดังรูปครับ
จะเกิดหน้าจอให้เลือก ดังรูปถัดไปครับ
สามารถอธิบายหน้าจอได้ดังนี้ครับ
Select counters from computer - ระบุชื่อ computer name ที่ต้องการจะตรวจสอบ
Performance Object - หมวดหมู่ของ counter
Select counter from list - รายชื่อ counter ในแต่ละหมวดหมู่ โดยจะ filter ตามกลุ่มของ Performance object ที่เลือก
Select instance from list – instance ของ counter ที่เลือก ยกตัวอย่างเช่น ถ้าเราเลือก %Processor Time ในช่อง select instance from list จะแสดงจำนวน CPU ทั้งหมดที่อยู่ในเครื่องครับ จากรูปด้านบน มี cpu 0 ตัวเดียว แสดงว่าในเครื่องนี้มี cpu ทั้งหมด 1 ตัวครับ แต่ถ้าเครื่องนี้มีหลายตัวก็อาจจะแสดงเป็น 0, 1, 2, 3 ก็แสดงว่าในเครื่องนี้มี cpu ทั้งหมด 4 ตัว โดยเราอาจจะขอดูเฉพาะตัวใดตัวหนึ่งหรือดูทั้งหมดก็ได้ครับ
ส่วนจะเพิ่มเติม counter อะไรที่จำเป็นในการ monitor ขอยกยอดไปเขียนอีกทีนะครับ
credit : http://yongyutde.spaces.live.com/blog/cns!A1F444837F369955!581.entry
ไม่มีความคิดเห็น:
แสดงความคิดเห็น