Tutorial ini akan menunjukkan kepada Anda cara meningkatkan waktu pemuatan halaman situs web Anda dengan menggunakan modul Google mod_pagespeed untuk Apache bersama dengan cache memori cepat Memcached. Waktu buka halaman merupakan faktor penting untuk mendapatkan peringkat yang baik di mesin pencari, Anda dapat menguji waktu buka saat ini mis. dengan alat Google PageSpeed Insights atau dengan alat pengembang di browser web Firefox. Pagespeed adalah modul Apache 2 yang mengoptimalkan dan men-cache konten situs web sebelum dikirimkan ke browser, hasilnya adalah halaman dimuat, beban sistem di server Anda berkurang dan server akan dapat mengirimkan lebih banyak halaman per detik . Mod_pagespeed menggunakan cache sistem file secara default, dalam tutorial ini kita akan mengganti cache sistem file dengan Memcached, daemon cache dalam memori yang cepat yang akan semakin meningkatkan waktu buka. Tutorial ini kompatibel dengan semua jenis pengaturan apache, saya akan menggunakan server LAMP Ubuntu sebagai
Instalasi mod_pagespeed
Google menyediakan paket mod_pagespeed .deb untuk penginstalan Ubuntu 32 dan 64-bit.
Bagaimana cara mengetahui apakah Anda memerlukan paket 32bit atau 64Bit? Jalankan perintah:
uname -a
Hasil dari perintah harus mirip dengan screenshot di bawah ini.
Ketika perintah berisi string "x86_64" maka sistem Anda menjalankan kernel Linux 64Bit. Dalam hal ini gunakan perintah yang disediakan di bawah untuk 64Bit Ubuntu.
Ubuntu 64 bit (Default untuk sebagian besar server saat ini)
cd /tmp
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb
dpkg -i mod-pagespeed-stable_current_amd64.deb
Ubuntu 32 bit
cd /tmp
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.deb
dpkg -i mod-pagespeed-stable_current_i386.deb
Kemudian restart Apache 2 untuk memuat konfigurasi mod_pagespeed.
service apache2 restart
Instalasi Memcached
Daemon Memcached tersedia di repositori Ubuntu sebagai paket .deb dan dapat diinstal dengan apt:
apt-get -y install memcached
Jalankan perintah "netstat -tap | grep memcached" untuk melihat apakah Memcached dimulai:
netstat -tap | grep memcached
Hasil dari perintah netstat akan terlihat seperti ini:
[email protected]:/tmp# netstat -tap | grep memcached
tcp 0 0 localhost:11211 *:* LISTEN 1687/memcached
Saya menandai port tempat Memcached berjalan dengan huruf tebal. Kita perlu mengetahui nomor port untuk konfigurasi mod_pagespeed.
Jika Anda ingin menggunakan Memcache dari aplikasi berbasis PHP dan bukan hanya untuk mod_pagespeed, maka instal ekstensi memcahed PHP:
apt-get install php5-memcached
Konfigurasikan mod_pagespeed untuk menggunakan Memcached
Buka file pagespeed.conf di editor, saya akan menggunakan editor nano di sini:
nano /etc/apache2/mods-available/pagespeed.conf
dan cari baris "ModPagespeedMemcachedServers":
[....]
# ModPagespeedMemcachedServers localhost:11211
[....]
Hilangkan # di depan garis sehingga garis yang dihasilkan terlihat seperti di bawah ini:
[....]
ModPagespeedMemcachedServers localhost:11211
[....]
Jika Anda memiliki banyak memori di server Anda, maka Anda bisa mendapatkan percepatan lebih lanjut dengan menghapus # di depan baris ini:
[....]
ModPagespeedCreateSharedMemoryMetadataCache "/var/cache/mod_pagespeed/" 51200
[....]
Kemudian restart server Apache 2 untuk mengaktifkan konfigurasi baru.
service apache2 restart
Sekarang mod_pagespeed akan menggunakan Memcached sebagai backend penyimpanan. Anda bisa mendapatkan statistik penggunaan dari Memcached dengan perintah nc:
echo stats | nc 127.0.0.1 11211
[email protected]:/tmp# echo stats | nc 127.0.0.1 11211
STAT pid 1687
STAT uptime 134
STAT time 1440931897
STAT version 1.4.14 (Ubuntu)
STAT libevent 2.0.21-stable
STAT pointer_size 64
STAT rusage_user 0.000000
STAT rusage_system 0.008000
STAT curr_connections 5
STAT total_connections 6
STAT connection_structures 6
STAT reserved_fds 20
STAT cmd_get 0
STAT cmd_set 0
STAT cmd_flush 0
STAT cmd_touch 0
STAT get_hits 0
STAT get_misses 0
STAT delete_misses 0
STAT delete_hits 0
STAT incr_misses 0
STAT incr_hits 0
STAT decr_misses 0
STAT decr_hits 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT touch_hits 0
STAT touch_misses 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 6
STAT bytes_written 0
STAT limit_maxbytes 67108864
STAT accepting_conns 1
STAT listen_disabled_num 0
STAT threads 4
STAT conn_yields 0
STAT hash_power_level 16
STAT hash_bytes 524288
STAT hash_is_expanding 0
STAT expired_unfetched 0
STAT evicted_unfetched 0
STAT bytes 0
STAT curr_items 0
STAT total_items 0
STAT evictions 0
STAT reclaimed 0
END
Tekan [ctrl] + c untuk kembali ke prompt perintah.
Sekarang uji kecepatan situs web Anda lagi, mis. dengan Wawasan PageSpeed. Ketika situs web Anda belum memiliki banyak lalu lintas maka mungkin Anda harus memuat ulang halaman web beberapa kali untuk mengisi cache sebelum Anda mendapatkan hasil yang tepat.
Tautan
- Alat kecepatan halaman Google
- memcached.org