Anda di halaman 1dari 2

The Vocket merupakan projek usahasama dengan sahabat saya, Mohd Fazreen Jasni semenjak awal Julai 2014.

Projek berusia 6 bulan ini memberi satu pentas kepada saya untuk bermain dengan 'huge crowd' dan rata-ratanya
adalah 'readers'.
Monthly Pageviews: 5,200,000 views
Daily Pageviews: 100k - 200k views
Peak Traffic: 2000+ live readers
Normal Traffic: 300 - 500 live readers
Beberapa rakan dan pembaca tanya macam mana 'configuration' server & sistemthevocket.com. Ok, mari kita kupas
bersama dan maaflah jika terlalu teknikal.
WORDPRESS
Projek ini menggunakan CMS WordPress sebagai 'publishing' platform kerana ia percuma, mudah dibelajar dan
mempunyai 'support' yang luas.
Untuk WordPress, saya cuba menggunakan 'plugin' seminimum yang mungkin. Jika sesuatu fungsi itu boleh di code
sendiri, jangan gunakan plugin. Kadang-kadang, apa yang dikehendaki sangat static dan boleh 'hard coded'.
Plugin yang penting untuk projek ini adalah W3 Total Cache untuk fungsi caching. Caching ini termasuk page caching
dan juga database caching (memcached). Page caching menyimpan sesuatu page yang telah siap sepenuh dalam
bentuk HTML, selepas diproses melalui PHP.
THEME
Setiap file akan di compress, termasuk CSS, JavaScript. Gunakan CSS/JavaScript compressor untuk membuang
spaces yang tidak diperlukan, atau meringkaskan sesuatu file (JavaScript) tersebut.
Jika terdapat beberapa file CSS/JavaScript, maka kita satukan supaya kurang request file daripada server. Ini boleh
mengurangkan trafik kepada server.
SERVER
Merujuk kepada gambar, User Request adalah pembaca. Apabila websitethevocket.com dibuka pada browser, ia
akan menghantar 'request' pada server. Dan server yang akan dicapai adalah Server A kerana ia adalah paling
dihadapan.
Server A bertujuan untuk menyimpan segala maklumat yang telah lengkap diproses dan ini dipanggil 'Caching'.
Tujuan server ini hanyalah sebagai suatu 'Library' yang luas. Tiada unsur processing data disini.
Jika page yang dicari tidak dijumpai di Server A, request tersebut akan dilanjutkan kepada Server B.
Server B menggunakan setup LEMP (Linux Nginx MySQL PHP). Nginx dibaca sebagai 'Engine X'. Disebabkan Nginx
hanyalah HTTP server, request dilanjutkan kepada PHP untuk diproses kerana WordPress dikod menggunakan PHP.
Pada peringkat ini, kod-kod PHP yang pernah digunakan akan disimpan (cache) oleh OPcache untuk kegunaan
semula. Melalui plugin W3TC, page tersebut akan dihasilkan sebagai HTML (final rendered file) untuk dihantar
kepada browser pembaca.

Kemudian, dihantar semula melalui Server A, yang turut akan menyimpan (cache) file tersebut untuk permintaan oleh
pembaca lain, tanpa perlu ke Server B untuk melalui proses-proses awal tadi.
PENUTUP
Rujukan gambar adalah khas untuk thevocket.com, sebuah blog artikel. Setup ini mementingkan pembacaan sahaja
(read). Untuk server dengan input dari user yang banyak (facebook / twitter / instagram / katsana), kuasa proses data
amat dititik-beratkan. Ia melibatkan BANYAK RAM dan PROCESSOR power.
Jika diperhatikan, thevocket.com tidak menggunakan sebarang CDN services, kerana CDN tertumpu kepada luar
Malaysia, sedangkan pembaca kami adalah rakyat Malaysia (dalam negara). Malahan, kos CDN seperti MaxCDN
masih jauh dari bajet kami, serta quality Cloudflare (Free) tidak memuaskan kami.
Tak jumpa CDN yang memuaskan? Kami tak perlu CDN, hanya perlu Cache server, iaitu Server A (dengan Varnish
Cache).
Feel free to comment for Q/A. Penat taip bahasa melayu rojak. Tabik Amanz Network.

Anda mungkin juga menyukai