Server WordPress.com Layani 70.000 request/detik Dengan NGINX

Chief Systems Wrangler dari Automattic yang menggawangi WordPress.com baru saja mengungkapkan rahasia tentang stabilitas arsitektur jaringannya. Barry Abrahamson selaku Chief Systems Wrangler dan co-Founder NGINX Andrew Alexeev menyatakan bahwa saat ini WordPress.com melayani lebih dari 33 juta situs dengan 339 juta orang pembaca dan 3.4 miliar halaman tiap bulannya. Sejak April 2008, WordPress.com telah mengalami 4.4 kali kenaikan page views. WordPress.com VIP sendiri yang melayani beberapa media besar seperti CNN Political Ticker, NFL, Time inc, dan lainnya juga mengalami kenaikan yang signifikan. Kini WordPress.com menggunakan sekitar 2000 server yang tersebar di 12 data center diseluruh dunia. Setiap data pelanggan dan pengguna WordPress.com akan direplikasi secara otomatis oleh tiap data center.

Masalah besar datang sejak tahun 2005 dimana untuk pertama kalinya Automattic harus melakukan ekspansi ke dedicated server yang baru. Awal tahun 2005, WordPress.com baru saja diluncurkan dan baru tahun 2006 memulai proses naik daunnya. Pada saat awal pengembangan WordPress.com itu, Automattic menggunakan round robin DNS. Setelah melihat trend perkembangan pengguna yang terus menanjak tajam, Automattic melihat solusi DNS mereka sudah tidak relevan lagi. Automattic kemudian menggunakan F5 BIG-IP. Namun, lagi-lagi seiring dengan percepatan pengguna yang tajam, penambahan F5 BIG-IP juga menambah pengeluaran Automattic secara tajam pula. Tim dari Automattic System kemudian mencari solusi yang lebih murah, reliabel dan menggunakan software opensource.

Ada 2 software yang pernah digunakan oleh tim Automattic yaitu Pound dan NGINX.

Pound sendiri digunakan oleh Automattic sebagai load balancer karena menawarkan solusi stabilitas yang luar biasa dan dukungan SSL yang sudah built-in dan stabil. Setelah menggunakan Pound sekitar 2 tahun, WordPress.com kemudian membutuhkan solusi untuk beberapa masalah seperti: kebutuhan konfigurasi secara on-the-fly, mekanisme check yang lebih baik, kemampuan recover dari backend failure tanpa membuat infrastruktur overload, dan tentunya skalabilitas yang mumpuni karena pengguna WordPress.com yang semakin naik.

Pada tahun 2008, akhirnya WordPress.com memutuskan memigrasi load balancer mereka dari Pound ke NGINX setelah sebelumnya ditest dan digunakan dalam pengembangan produk Gravatar. Dengan digunakannya NGINX, WordPress.com terpaksa menghapus beberapa load balancernya seperti HAProxy dan LVS. Lalu kenapa NGINX yang dipilih? berikut alasannya:

– konfigurasi yang fleksibel, logis dan mudah
– rekonfigurasi dan upgrade secara on-the-fly tanpa mengganggu pengguna
– mendukung routing aplikasi via protokol FastCGI, uwsgi atau SCGI
– satu-satunya software yang terbukti handal menangani lebih dari 10.000 request per detik
– penggunaan memori dan CPU yang minimal dan terprediksi.

Kini secara keseluruhan, WordPress.com melayani lebih dari 70.000 request per detik, dengan trafik lebih dari 15 gigabit per detik. Mesin yang digunakan adalah Dual Xeon 5620 4 core CPUS dengan hyper-threading, 8-12 Gigabyte RAM dan distro Debian 6.0 sebagai sistemnya.

So, ada yang mau meniru langkah WordPress.com?. Di Unnes sendiri mekanisme Load Balancers menggunakan kombinasi F5 BIG-IP, HAProxy dan pfSense. Mungkin suatu saat kami akan beralih ke NGINX.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: