Kesempatan ini saya gunakan untuk sekalian pindah ke
server di IIX, alhamdulillah beberapa rekan membantu nyumbang server dan
bandwidth. Yang pertama mas Akbar Marwan (the phenomenon dari gundar)
di datacenter Telkom-Jakarta, dan yang kedua mas Rizal di datacenter
Bandung. Thanks untuk mas Akbar dan mas Rizal, Indonesia akan maju kalau
banyak orang baik seperti anda berdua. Tapi ternyata kedua server ini
ambrol juga. Server ngos-ngosan, hampir 2 hari sekali saya terpaksa
bolak balik mindahin NS ke server yang hidup. Yang pasti bikin om Akbar
dan om Anton sibuk berat, karena bantuin ngopeni IlmuKomputer.Com dan berkali kali mindahin backup tarbal ukuran besar
Inilah mengapa IlmuKomputer.Com 2-3 minggu belakangan jarang bisa
diakses dengan baik oleh rekan-rekan sekalian. Juga yang membuat ratusan
email, SMS, dan message YM yang berupa komplen mampir ke laptop saya
Dari situ saya mulai mikir sepertinya sudah waktunya
harus ngoprek dan mengoptimisasi server. Paling tidak ada 4 titik yang
bisa dioptimisasi: Apache, MySQL, PHP dan WordPressnya sendiri. Saya
pingin melakukan optimisasi di semua titik, hanya untuk ujicoba, saya
coba dulu dari yang mudah. Dari yang saya lakukan di bawah, saya lihat
sudah cukup signifikan membuat laju IlmuKomputer.Com menjadi cukup
cepat. Ada beberapa hal lain yang sebenarnya masih pingin saya lakukan,
cuman pingin sambil memonitor kondisi servernya. Thanks untuk mas Kemas yang meskipun baru balik berdjoeang di Asia Source II sudah berjibaku menemukan banyak resource tentang optimisasi WordPress.
1. OPTIMISASI MySQL
Ini awalnya Anton
yang rajin ngoprek. Saya sendiri lihatnya karena yang down duluan
selalu MySQL dan bukan Apachenya, jadi dari sini kita gerak. Optimisasi
MySQL biasanya hanya terpusat di file /etc/my.cnf. Saya lihat yang cukup
penting adalah setting variable max_connections, key_buffer dan
table_cache. Setting variable lain selengkapnya seperti di bawah,
beberapa nyontek dari tulisan yang ada di list referensi.
max_connections = 500
key_buffer = 256M
max_allowed_packet = 1M
table_cache = 512
sort_buffer_size = 2M
read_buffer_size = 2M
myisam_sort_buffer_size = 64M
thread_cache = 8
query_cache_size = 512M
key_buffer = 256M
max_allowed_packet = 1M
table_cache = 512
sort_buffer_size = 2M
read_buffer_size = 2M
myisam_sort_buffer_size = 64M
thread_cache = 8
query_cache_size = 512M
Sedangkan optimisasi table-table databasenya sendiri bisa menggunakan PhpMyadmin, khususnya fitur Optimize Table. Ada artikel menarik tentang ini di sini.
2. OPTIMISASI WORDPRESS dan PHP
Intinya saya pingin supaya tidak ada query ke
database secara terus menerus di IlmuKomputer.Com. Bahasa gampangnya
bagaimana membuat page yang dinamik dan banyak query ke database menjadi
statik. Ini ternyata ada plugin WordPress yang bisa dipakai, namanya WP-Super-Cache. Instalasinya simple seperti plugin WordPress yang lain, dan ternyata efeknya cukup ampuh.
Teknik caching APC (Alternative PHP Cache)
juga bisa digunakan. Berbeda dengan WP-Cache yang merupakan plugin
WordPress, APC bisa digunakan untuk code PHP apapun karena dia perlu
bermain-main langsung dengan setting php.ini
3. OPTIMISASI SCRIPT WORDPRESS
Optimasi bisa juga dilakukan ke script WordPress,
misalnya dengan memperbaiki function call. Ini juga cukup menarik
dilakukan, meskipun tidak se-ngefek pakai WP-Cache atau APC. Teknik ini
tertulis lengkap di: http://elliottback.com/wp/archives/2006/07/27/optimizing-wordpress-performance-speed/
Teknik lain optimisasi script wordpress adalah dengan
usaha mem-freeze pemanggilan $now, sehingga tidak terload
berulang-ulang. Teknik ini efektif khususnya berhubungan dengan query
post WordPress. Sudah ada pluginnya, bisa didownload dari http://txfx.net/code/wordpress/post-query-accelerator/ Instalasi juga sangat mudah karena tinggal upload ke /wp-content/plugins dan klik activate di menu administrasi WordPress.
4. OPTIMISASI APACHE
Optimisasi lengkap ada di http://httpd.apache.org/docs/1.3/misc/perf-tuning.html. Saya sendiri baru sempat ngoprek variable MaxClients, yang lainnya belum nyoba.
5. MIRRORING WORDPRESS
Jujur saja saya belum benar-benar paham teknik
mirroring wordpress ke berbagai server. Hanya untuk mirroring wordpress
dengan model P2P software, ternyata bisa pakai The Coral Content Distribution Network. Cukup menjanjikan, tapi sayangnya saya sendiri belum nyoba.
6. PENGGUNAAN SQUID
Mas Harry Sufehmi sudah menulis lengkap tentang penggunaan SQUID untuk server traffic tinggi di situsnya. Lengkap dengan implementasi untuk IlmuKomputer.Com
Yang saya tulis pasti banyak salah, karena core competence saja bukan di server tunning and optimization
Tulung koreksi dan masukan dari rekan-rekan sekalian yang ahli di
bidang ini. Itu dulu, maturnuwun atas perhatiannya, saya akan “kembali
ke laptop” dulu.
0 Komentar