Juju #07 – กระจายโหลดข้ามเครื่อง
ที่ผ่านมา เป็นการติดตั้ง Juju ซึ่งเบื้องหลังคือ LXD Container แต่ทั้งหมดยังอยู่บนเครื่องเดียวกัน ภาพต่อไปนี้ เป็นการทดสอบความเร็วในการตอบสนองของ WordPress ซึ่งเป็น Post ที่มีภาพจำนวนมาก และมีขนาดในการ Download ทั้งหมด 5 MB ใช้เวลาประมาณ 1.24 วินาที เมื่อใช้ jMeter ระดมยิงด้วยความเร็ว 100 Connections ต่อ 1 วินาที ต่อเนื่อง 10 วินาที ได้ผลว่า เวลาเฉลี่ยคือ 2.478 วินาที ต่อมาลองเพิ่มจำนวน Container จาก 1 เครื่องไปเป็น 3 เครื่อง แต่ทำงานอยู่บน Physical Server เดียวกัน แล้วทดลองยิงแบบเดิม ได้ผลออกมาคือ ใช้เวลาเฉลี่ย 1.663 วินาที จากนั้น ทดสอบแยก Container ออกไป เป็น 3 Physical Servers ได้ผลออกมาว่า ใช้เวลาลดลงเหลือเพียง 1.056 วินาทีเท่านั้น สรุป การกระจายโหลดออกไปยังหลายๆ Physical Servers ทำให้สามารถรับโหลดจำนวนมากได้ ในบทความต่อไปจะมาลงรายละเอียดในการ Setup กัน Reference: – https://www.digitalocean.com/company/blog/horizontally-scaling-php-applications/ – https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stack-in-ubuntu-16-04 – http://php.net/manual/de/mysqlnd-ms.loadbalancing.php – https://serversforhackers.com/video/php-fpm-configuration-the-listen-directive – http://nginx.org/en/docs/http/request_processing.html – http://stackoverflow.com/questions/5328844/nginx-load-balance-with-dedicated-php-fpm-server – https://code.google.com/archive/p/sna/wikis/NginxWithPHPFPM.wiki – http://nginx.org/en/docs/http/load_balancing.html – http://opensource.cc.psu.ac.th/KM-container