Performance « SpaLinux.com
เปรียบเทียบ RAID-0 จากคำสั่ง mdadm และ lvm ตอนที่ 1
Sunday 7 June 2009 @ 2:08 pm

เกิดความสงสัยขึ้นมา ขณะคอนฟิกเซิร์ฟเวอร์ที่มีดิสก์หลายๆ ก้อน เพื่อทำหน้าที่เป็น file server ว่า ระหว่างการใช้ mdadm และ lvm เพื่อรวมดิสก์แต่ละก้อนเข้าด้วยกันทำเป็น RAID-0 อย่างไหนจะเร็วกว่ากัน เลยทดสอบและนำผลลัพธ์แต่ละคอนฟิกมาเปรียบเทียบกัน

และเพื่อความครบถ้วนของการเปรียบเทียบ เลยทดสอบคอนฟิกทั้งเป็นแบบ linear และ stripe (RAID-0) จากการใช้คำสั่งทั้งสองด้วย โดยแยกเป็นสองบทความ ในตอนแรกจะใช้คำสั่ง mdadm ก่อน

read more…




คอมไพล์ sysbench บน Solaris 10 (x86)
Saturday 23 May 2009 @ 11:40 pm

บทความนี้ขอแสดงวิธีการคอมไพล์โปรแกรม sysbench บน Solaris 10 (x86) เพื่อใช้วัดประสิทธิภาพเปรียบเทียบกับ Fedora 10

ในที่นี้ขอใช้แค่เวอร์ชั่น 0.4.10 และเลือกไม่คอมไพล์รวม mysql เพื่อความง่ายในการคอมไพล์และทดสอบ เพราะการที่จะคอมไพล์ sysbench เวอร์ชั่นใหม่กว่านี้ จะติดปัญหาหลายๆ อย่าง เช่นดาวน์โหลดโปรแกรม library มาติดตั้งเพิ่มเติม เพื่อแก้ไขปัญหา libtool ที่มีการเปลี่ยนแปลงได้ อย่างไรก็ตามเรายังสามารถนำผลที่ได้มาเปรียบเทียบแบบคร่าวๆ เพราะวิธีการ benchmark ยังคงเป็นรูปแบบเดียวกัน

ดาวน์โหลดไฟล์

read more…




เพิ่มความปลอดภัยให้ Solaris 10 แบบง่าย
Saturday 23 May 2009 @ 9:55 pm

วันนี้ขอเขียนเกี่ยวกับ Solaris 10 ซะหน่อย ช่วงนี้ได้รับมอบหมายให้เพิ่มความปลอดภัย (secure) ให้กับเครื่อง Solaris  แต่มีข้อแม้ไม่อยากให้ลง JASS (Solaris Security Toolkit) ก็เลยลองทำดู และเรียบเรียงมาเป็นบทความให้ผู้สนใจทั่วไป

การเพิ่มความปลอดภัยในบทความนี้  คือการปิดเซอร์วิสที่ไม่ได้ใช้งานโดยไม่กระทบกับงานที่ลูกค้าใช้  ซึ่งนอกจากจะปิดช่องโหว่ที่อาจเกิดขึ้นแล้ว ยังได้ free memory เพิ่มคืนมาอีกด้วย read more…




sysbench วัดความแรงของ CPU
Sunday 17 May 2009 @ 2:01 am

หลังจากที่คอมไพล์และติดตั้งโปรแกรม sysbench (คอมไพล์ sysbench บน Fedora 10) แล้ว ตอนนี้เราจะลองใช้ sysbench เพื่อทดสอบประสิทธิภาพความเร็วของ CPU (CPU Benchmark)

วิธีการใช้คำสั่ง sysbench ต้องระบุออปชั่น test ว่าเราจะทดสอบอะไร อาจระบุออปชั่นต่างๆ เพิ่มเติม เป็นค่าตัวแปรผันแปรที่ใช้ในการทดสอบ ค่าเหล่านี้จะมีค่าดีฟอลต์อยู่แล้ว ดูได้จากการรันคำสั่ง sysbench แบบไม่มีออปชั่น หรือดูจากผลลัพธ์ในการัน

การทดสอบในบทความนี้ เป็นการทดสอบ (test) CPU ให้คำนวณหาค่าจำนวนเฉพาะ (prime number)  ตั้งแต่ 1 ไปจนถึงตัวเลขมากสุดเท่ากับค่าตัวแปร cpu-max-prime ในที่นี้จะระบุ 20000 แล้วตามด้วยออปชั่น run เพื่อสั่งเริ่มการคำนวณ

โดยในแต่การทดสอบจะมีการเปลี่ยนแปลงจำนวน CPU และจำนวน Threads ที่ใช้ (num-threads) ในการคำนวณ เพื่อเปรียบเทียบผลลัพธ์ด้วย

read more…




คอมไพล์ sysbench บน Fedora 10
Saturday 16 May 2009 @ 5:40 pm

SysBench เป็นโปรแกรมที่ใช้วัดประสิทธิภาพ (benchmark) ของเครื่องได้หลายอย่าง ทั้ง CPU, Memory, Disk และ Database ทั้งนี้ยังสามารถระบุออปชั่นสำหรับการทดสอบได้เช่น จำนวน thread ที่รัน ขนาดที่จะทดสอบ ระยะเวลาที่ใช้ในการรัน

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

เนื่องจากในแผ่นติดั้ง หรือ จาก Fedora 10 Everything ไม่มีโปรแกรม sysbench ในรูปแบบ rpm ทำให้การที่จะใช้โปรแกรมนี้ได้ ในบทความนี้ขอนำเสนอขั้นตอนและวิธีการคอมไพล์โปรแกรม sysbench และติดตั้งเอง

read more…




เพิ่มความเร็วการ SELECT ด้วย MySQL Query Cache
Sunday 26 April 2009 @ 1:23 am

เคยแนะนำวิธีการ สร้าง index ในฐานข้อมูล MySQL เพื่อเพิ่มความเร็วในการค้นหาฟิลด์ที่ต้องการได้เร็วขึ้น แต่ต้องมีการแก้ไขโครงสร้างของ table ในฐานข้อมูลโดยใช้คำสั่ง ALTER TABLE เลือกฟิลด์ที่ต้องการทำเป็นคีย์ (ADD KEY)

บทความนี้ขอแนะนำอีกวีธีแต่จะมีผลทั้งเซิร์ฟเวอร์ฐานข้อมูล (Database Server) เลย ด้วยการเปิดคุณสมบัติ Query Cache ของ MySQL ให้มีการเก็บ SELECT statement และผลลัพธ์ที่ได้ไว้ใน cache ซึ่งถ้าเรารันคำสั่ง SELECT ครั้งต่อไปที่มี statement เหมือนกัน MySQL จะดึงผลลัพธ์การ query มาจาก cache โดยตรง ไม่ต้องไป query จาก table มาใหม่ ทำให้ผลการค้นหาเร็วขึ้นมาก

read more…




เปรียบเทียบ ext3, ext4 และ xfs บน Fedora 10
Saturday 13 December 2008 @ 7:38 pm

คุณสมบัติใหม่อย่างหนึ่งของ Fedora 10 ที่เพิ่มจากเวอร์ชั่นก่อน คือการสนับสนุน filesystem เพิ่มเติม ประกอบด้วย ext4 และ xfs

หลังจากที่ได้ทดลองติดตั้ง Fedora 10 เลยเกิดความลังเลว่าจะเปลี่ยน filesystem เป็นแบบใหม่หรือไม่ เลยลองรันคำสั่งง่ายๆ เพื่อทดสอบประสิทธิภาพการสร้าง การลบไฟล์ เป็นต้น

read more…




คอนฟิกเซอร์วิส nscd
Friday 28 November 2008 @ 4:13 pm

ในกรณีที่คอนฟิกให้ลีนุกซ์ตรวจสอบ user, group (authenticate) จาก LDAP Server ทุกครั้งที่มีการอ้างอิง เช่นการสร้างไฟล์ หรือแสดงรายชื่อไฟล์ด้วยคำสั่ง ls ของ user หรืออื่นๆ ที่เกี่ยวข้องกับ user, group เครื่องจะต้องมีการสอบถามจาก LDAP ทุกครั้ง ทำให้บางครั้งอาจเพิ่มโหลดมากเกินไปบนตัว LDAP Server

เพื่อเพิ่มประสิทธิภาพในการตรวจสอบ user, group จาก LDAP แนะนำให้รันเซอร์วิส nscd (name service cache daemon) บนเครื่อง โดยโปรแกรมนี้จะทำหน้าที่เก็บข้อมูล cache ไว้บนเครื่องตัวเอง ถ้าถามซ้ำกับข้อมูลเดิมที่มีอยู่ใน cache แล้ว ภายในระยะเวลาที่กำหนดไว้ (time to live) จะไม่มีการส่งไปถาม LDAP Server อีก

ข้อเสียของการรันเซอร์วิส nscd อย่างหนึ่งคือ เรื่องการตั้งค่าเวลา (time to live) ทำให้บางครั้งอาจไม่ได้ข้อมูลที่ล่าสุด เช่นดีฟอลต์เวลาที่ cache ไว้สำหรับการเก็บข้อมูลของ user คือ 600 วินาที สำหรับการค้นหาข้อมูลที่สำเร็จ (positive-time-to-live) ถ้ามีการเปลี่ยนแปลงข้อมูลของ user บน LDAP Server จะต้องรอจนเวลานี้ผ่านไป  ข้อมูล cache ใน nscd ถึงจะปรับปรุงเป็นข้อมูลใหม่

read more…




ปิดโมดูลที่ไม่ใช้งานของ Apache เว็บเซิร์ฟเวอร์
Monday 29 September 2008 @ 11:40 pm

โดยดีฟอลต์คอนฟิกของ Apache เว็บเซิร์ฟเวอร์ที่ติดตั้งมากับลีนุกซ์เวอร์ชั่นต่างๆ จะเปิด (enable) การใช้งานโมดูลต่างๆ ทั้งหมด ทั้งนี้เพื่อสะดวกและง่ายต่อการเริ่มต้นใช้งาน

แต่การใช้งานจริงๆ ในระบบ production แนะนำให้ปิด (disable) คอนฟิกของโมดูลที่ไม่ได้ใช้งาน ทั้งนี้เพื่อประโยชน์ทางด้านความปลอดภัย (security) และประหยัดหน่วยความจำ Memory ที่ต้องถูกใช้งานโดยเปล่าประโยชน์ด้วย (แนะนำให้ใช้คำสั่ง ps เปรียบเทียบขนาด memory ที่ใช้ก่อนและหลังการปิดโมดูล)

บทความนี้ได้รวบรวมจัดกลุ่มโมดูลตามลักษณะการใช้งาน ซึ่งถ้าคุณไม่ได้ใช้คุณสมบัติในโมดูลนั้นๆ สามารถที่จะปิดได้ ด้วยการใส่เครื่องหมาย # หน้าบรรทัดของ LoadModule โดยคอนฟิกทั้งหมดจะเป็นตัวอย่างที่ทำบน Fedora 9 และหลังจากการแก้ไขทั้งหมดเพื่อปิดโมดูลทั้งหมดนี้แล้ว เว็บยังสามารถรัน PHP ได้ตามปกติ

read more…




ปรับแต่งคอนฟิกพื้นฐานของ Apache เว็บเซิร์ฟเวอร์
Sunday 28 September 2008 @ 11:49 pm

บทความนี้ขอแนะนำการปรับแต่งคอนฟิกพื้นฐานของ Apache ซึ่งติดตั้งมากับ Fedora 9 ทำให้เว็บเซิร์ฟเวอร์ทำงานอย่างมีประสิทธิภาพ โดยการปิดคุณสมบัติที่ไม่ได้ใช้งานออกไป เพื่อประหยัดขนาด CPU, Memory ที่ต้องใช้ในการรันโปรแกรม

การแก้ไขทั้งหมดในบทความนี้เป็นการแก้ไขคอนฟิกในไฟล์ /etc/httpd/conf/httpd.conf ซึ่งจะเป็นไฟล์คอนฟิกหลักของ Apache เว็บเซิร์ฟเวอร์

read more…




« Newer PostsOlder Posts »