รู้จักซอฟต์แวร์เบื้องหลัง Facebook ว่ารองรับโหลดมหาศาลได้อย่างไร

ตอนนี้ Facebook กลายเป็นเว็บไซต์ขนาดใหญ่ที่สุดของโลก มีผู้ชมเดือนละ 570 ล้านครั้ง มีคนมาดูภาพบน Facebook วินาทีละ 1.2 ล้านครั้ง แต่อัตราการล่มของ Facebook กลับน้อยมาก (โดยเฉพาะเมื่อเทียบกับ Twitter)
เว็บไซต์ Royal Pingdom จึงได้นำเสนอซอฟต์แวร์ที่ Facebook ใช้ทำเซิร์ฟเวอร์ว่ามีอะไรบ้าง? Facebook ทำอย่างไรจึงรองรับผู้ชมจำนวนมหาศาลนี้ได้
โดยภาพรวมแล้ว Facebook ยังใช้เทคโนโลยี LAMP เช่นเดียวกับเว็บไซต์ทั่วไป แต่ในรายละเอียด Facebook กลับพัฒนาซอฟต์แวร์ของตัวเองขึ้นมาอีกมากมาย
ซอฟต์แวร์ที่ Facebook ใช้ มีดังนี้
Memcached เป็นตัวกลางระหว่างเว็บเซิร์ฟเวอร์กับฐานข้อมูล เพื่อไม่ให้ต้องเรียกข้อมูลบ่อยครั้ง Facebook มีเซิร์ฟเวอร์ Memcached หลักหลายพันตัว ซึ่งน่าจะมากที่สุดในโลก
HipHop for PHP ตัวแปลภาษา PHP เป็น C++ เพื่อประสิทธิภาพที่ดีกว่า (อ่านข่าวเก่าประกอบตามลิงก์)
Haystack ระบบเก็บภาพประสิทธิภาพสูง ตอนนี้มีภาพถูกเก็บอยู่ 8 หมื่นล้านภาพ
BigPipe เว็บเซิร์ฟเวอร์ที่ให้บริการเฉพาะ “บางส่วนของเพจ” (ตัวอย่างที่ชัดเจนคือ Facebook Chat)
Cassandra ฐานข้อมูลแบบกระจายตัว (อ่านข่าวเก่าเรื่อง NoSQL)
Scribe ระบบจัดการ log file
Hadoop ระบบ MapReduce
Hive ระบบที่ใช้ SQL กับ Hadoop
Thrift ตัวกลางสำหรับภาษาที่ใช้พัฒนาอันหลากหลาย
Varnish ตัวเสริมประสิทธิภาพของ HTTP
นอกจากนี้ยังมีเทคนิคอื่นๆ อีกมาก เช่น การทดสอบโค้ดเฉพาะผู้ใช้บางกลุ่ม, การแอบรันระบบใหม่โดยไม่ให้ผู้ใช้รู้ เพื่อเป็นการทดสอบในสภาวะการณ์จริง รายละเอียดอ่านกันได้ตามลิงก์ครับ
ที่มา - Royal Pingdom

ในTHT มีเทพท่านนึงกำลังลองทั้งหมดที่ท่านกล่าวมา อิอิ

เสี่ยป็อปใครอ่ะ ?

บุคคลนิรนาม ใบแค่ว่า

งั้นก็ต้องพี่อัต siambox

ขาด haystack อะ อยากเอามาเล่น หาไม่ได้ T_T

มาเก็บความรู้ครับ

วันหนึ่งเข้า facebook

ขอเดา คนนั้นชื่อขึ้นต้นด้วย เ-้

เอ่ใครหน่อ

พักนี้ FB โหลด ขึ้นหน้าขาวบ่อยนะ

น้องตั้มก็ทำให้ FB ด้วยไม่ใช่เหรอ

สุดยอด ครับท่าน