Idea Membangunkan Laman Web WordPress Pantas

Idea Membangunkan Laman Web WordPress Pantas

Baru-baru ini saya telah memulakan satu topik berkenaan membangunkan laman web yang pantas khususnya WordPress di dalam kumpulan Facebook KKWP. Daripada topik tersebut, perbincangan telah berlaku dan membawa saya kepada membuat senarai idea bagi membangunkan laman web yang pantas. Saya mungkin akan mengulas setiap idea yang disenaraikan di bawah secara lanjut namun pada penulisan yang akan datang.

Idea Membangunkan Laman Web WordPress Pantas

Pemilihan Pelayan Web

Pelayan web adalah langkah pertama dalam mencapai kelajuan yang diperlukan. Pastikan pelayan web yang anda pilih adalah tidak kurang dari spesifikasi yang anda perlukan. Pilih ikut budget dan kesesuaian sama ada ingin menggunakan Virtual Provate Server, hosting berkongsi ataupun sebagainya.

Pilih Penyedia Hosting Paling Dekat

Pilih penyedia hosting yang menawarkan pelayan paling dekat dengan audien anda. Contoh, jika audien berada di Malaysia maka pilih pelayan yang berada di Malaysia atau di negara jiran terdekat seperti Singapura. Hal lokasi penyedia ini dapat diatasi dengan penggunaan CDN.

NGINX Lebih Pantas Berbanding Apache

Salah satu teknologi yang terbaik dalam teknologi pelayan web ialah NGINX. Dengan penggunaan NGINX dapat meningkatkan lebih kurang sebanyak 2.5% kelajuan berbanding menggunakan Apache.

Perbezaan utama antara NGINX dan Apache adalah model (acara) pengoperasian mereka yang mana NGINX menjalankan satu proses worker bagi setiap proses CPU. Ini ialah punca mengapa NGINX menggunakan perkakas dengan lebih effesyen. NGINX lebih popular dengan pengguna Vitual Private Server (VPS) berbanding hosting berkongsi.

LiteSpeed Bagi cPanel Hosting Berkongsi

Sebenarnya tidak, ada juga hosting berkongsi cPanel yang menyediakan NGINX sebagai proksi berbalik – namun jarang ditemui atau lebih banyak ditemui dalam hosting berkongsi Plesk.

Bagi pengguna hosting berkongsi, LiteSpeed adalah pilihan teknologi terbaik yang boleh menjadi pilihan mereka yang menggunakan cPanel. LiteSpeed memberikan kali ganda lebih pantas berbanding menggunakan Apache serta mengendalikan serangan DDOS jauh lebih baik.

Penggunaan SSD

Penggunaan SSD (Solid-state Drive) tutut membantu meningkatkan kecekapan web yang mana data lebih pantas dapat di akses.

Versi PHP 7.3

Gunakan php dari versi yang terkini. PHP versi 7 ke atas akan memproses PHP lebih pantas berbanding menggunakan versi PHP yang terdahulu. Versi PHP terkini memerlukan anda mempunyai plugin terpasang yang dikemaskini.

Pendapat Peribadi

Jika saya menggunakan VPS, saya lebih memilih untuk menggunakan NGINX dengan PHP 7.3. Untuk mendapatkan pemasangan stack ini saya biasa menggunakan RunCloud.io.

Jika saya menggunakan hosting berkongsi, saya lebih suka untuk memilih pakej hosting cPanel yang di datangkan dengan LiteSpeed. Sesetengah pengguna menyukai Plesk yang dijalankan bersama dengan NGINX.

Panduan untuk lebih mudah, pilih sahaja pakej yang didatangkan dengan WordPress Optimized. Di bawah ini saya senaraikan semua pilihan saya secara peribadi. Link tersebut ialah link affiliate, setiap keuntungan dari affiliate akan disalurkan ke arah yang baik.

Cadangan Hosting Berkongsi

Cadangan VPS

Cadangan Panel VPS

Isu Plugin dan Theme

Responsive Theme

Gunakan theme yang betul-betul responsif berasaskan CSS / JQuery dan dikodkan dengan baik. Ini memudahkan konfigurasi untuk cache nanti yang mana anda tidak perlu melakukan dua jenis cache iaitu Desktop dan Mobile (cukup hanya satu cache). Pemilihan memaparkan cache Desktop dan mobile serba sedikit memberi beban kepada pelayan serta menyusahkan anda bagi konfigurasi cache nanti.

Cadangan Theme

Theme / Plugin Kod Buruk

Tidak dinafikan payah untuk menentukan theme atau plugin dikod dengan baik atau buruk. Kod buruk yang dimaksudkan ialah menggunakan fungsi dalam PHP yang tidak digalakkan, tidak berstruktur dan tidak menggunakan fungsi dari WordPress Codex. Berhati-hati dalam memilih theme yang bakal anda pasangkan, cuba lihat review yang telah diberi oleh pelanggan lepas seterusnya pastikan ia sesuai dengan plugin yang anda gunakan.

Plugin High Query

Sehingga kini terdapat banyak plugin yang melakukan query yang tinggi dan banyak kali kepada database yang mana menjadikan ia beban kepada memori di dalam hosting seterusnya request menjadi perlahan untuk dipenuhi.

Plugin yang biasa dikaitkan dengan perilaku seperti ini adalah seperti plugin yang melakukan tracking pelawat seterusnya menyimpan data tracking ke dalam hosting itu sendiri. Untuk masalah tracking sila gunakan plugin yang bergantung kepada servis dari luar ataupun remote seperti Google Analytics, JetPack dan sebagainya.

Selain dari itu ialah plugin yang memaparkan artikel popular, ini juga disebabkan masalah yang sama seperti di atas kerana masih menggunakan metod yang sama iaitu mengumpul data tracking bagi memilih artikel popular.

Namun ingat, jangan gunakan banyak tracking plugin dalam satu-satu website walaupun ianya bergantung kepada perkhidmatan luar kerana ia turut meningkatkan request.

Pilih Plugin / Theme Builder Yang Baik

Tidak dinafikan zaman ini kebanyakkan web direka hanya dengan menggunakan builder yang mana jauh lebih mudah dari suatu masa dahulu. Pilih builder yang tidak menghasilkan kod yang panjangnya berjela-jela (lebih kepada kod tidak digunakan dan berulang). Untuk ini saya memilih Divi Builder dan sesetengah pengguna memilih Elementor.

Plugin Lama Yang Sakit

Sentiasa kemaskini plugin yang anda gunakan, plugin yang lama bergantung kepada function yang lama mungkin mengandungi kod yang telah tidak sesuai digunakan dan tidak dioptimasi untuk kegunaan semasa.

Saiz Halaman (Page Size)

Saiz halaman boleh dikecilkan dengan mengecilkan semua elemen dari laman web. Elemen yang terdapat dalam laman web ialah fail html, imej, objek, JavaScript dan fail CSS.

Pemampatan GZIP dan Minify

Pemampatan GZIP dapat memperkecilkan lagi segala fail yang diterima oleh pelayar web. Pemampatan GZIP biasanya dilakukan memalui Apache, NGINX ataupun LiteSpeed di peringkat pelayan.

Minify HTML, JavaScript dan CSS – fail ini dikecilkan dengan mengurangkan jumlah baris baru, ruang kosong dan aksara yang tidak diperlukan dalam fail tersebut.

Pemampatan Imej dan Kualiti Imej

Imej turut boleh dimampatkan dan diturunkan kualiti sehingga 80% (sesuai hanya paparan skrin) bagi mengurangkan saiz gambar tersebut. Selain dari itu meta data EXIF dalam imej turut tidak diperlukan. Jika anda tidak memerlukan ketelusan (transparency) pada imej tersebut, cukup hanya menggunakan fail dengan format JPG atau JPEG.

Penggunaan teknologi WebP bagi memaparkan imej adalah lebih baik kerana dapat memaparkan gamar dengan lebih pantas.

Gunakan imej dan objek lain pada keperluannya sahaja, jangan gunakan terlalu banyak dan tidak pula lansung tiada (mana serinya jika tidak datang dari imej).

Cadangan Plugin

  • Query Monitor – Untuk melakukan nyah-pepijat dan melihat query yang dilakukan oleh plugin dan theme.
  • Autoptimize – Melakukan pemampatan GZIP dan Minify.
  • Fast Velocity Minify – Melakukan minify untuk HTML, CSS dan JavaScript.
  • TinyPNG – Jika anda tiada buget yang besar sila guna TinyPNG sebelum muat naik gambar.
  • reSmush it – Mengecilkan dan memampatkan imej (dengan plugin) secara percuma. Tidak semua hosting sesuai untuk plugin ini.
  • *Imagify – Mengecilkan dan memampatkan imej serta menukar ke format WebP.
  • Imsanity – Menukar saiz imej ke saiz yang lebih kecil (anda tentukan) setiapkali muatnaik.

Permintaan Halaman (Site Request)

Lazyload

Lazyload dapat melengahkan imej dari dipaparkan segera. Imej akan dipaparkan apabila sampai pada bahagian tersebut.

Plugin Tidak Diperlukan

Kebanyakan plugin mempunyai JavaScript dan CSS sendiri, malangnya apabila fail tersebut turut digunakan pada halaman yang tidak mempunyai keperluan. Matikan dan hapuskan plugin yang anda tidak perlukan.

Sumber Pihak Ke-3

Kini terdapat banyak perkhidmatan pihak ke 3 yang menambah fitur pada laman web anda. Ini termasuklah anda memasukkan video dari YouTube, share button yang melibatkan angka seperti addthis.com dan pelbagai sumber lain.

Gravatar (gambar dalam komen) dalam komen juga memanggil sumber dari luar iaitu dari Gravatar – ia juga selamat dikeluarkan.

Anda tidak dilarang untuk menggunakan suber pihak ke-3 seperti ini kerana ia baik dalam menambah fungsi pada laman web anda namun berpada-padalah kerana ia juga punca kepada request yang banyak.

Pangkalan Data Yang Besar

Pangkalan data yang bersa juga boleh menjadi punca kepada kelambatan load sesebuah laman web. Ia disebabkan oleh sesetengah fungsi yang melakukan query kepada pangkalan data, pangkalan data yang besar menyebabkan data yang diquery lambat diterima kerana proses yang menjalankan query terpaksa menanggung beban yang besar.

Apa yang boleh dilakukan kepada pangkalan data WordPress ialah menghapuskan entry sementara yang telah expired dan data-data yang tidak lagi diperlukan seperti revision dan sebagainya. Selain itu pangkalan data turut perlu menjalani proses optimasi. Pingbacks dan Trackbacks juga tidak diperlukan lagi untuk hari ini, ia turut boleh dimatikan dan dihapuskan dari pangkalan data.

Fitur WordPress

Ada sesetengah fitur wordpress yang selamat dan boleh dimatikan kerana membawa sedikit impak kepada kelajuan laman web. Antara fitur yang boleh dimatikan ialah seperti (seperti sebelum ini) Gravatar, Pingback / Trackback, Heart Beat, WPCron (namun perlu digantikan dengan Cron sebenar), JQuery Migrate, Emoji, Embed Media, XML-RPC, Dashicons dan sebagainya.

Cadangan Plugin

  • Lazy Load by WP Rocket – Melakukan Lazyload untuk setiap imej dan iframe dalam laman web.
  • WP-Optimize – Optimasi pangkalan data dapat dilakukan dengan plugin ini.
  • *perfmatters – Mematikan ciri pada WordPress yang tidak diperlukan yang membolehkan halaman diload lebih pantas.
  • Clearfy – Hampir sama dengan perfmatters melainkan ianya percuma.

Penggunaan Cache

Proses cache ialah proses menyimpan data yang sering di akses secara sementara ke dalam Cache. Ia ibarat setiap pengguna yang memasuki web seperti melayari laman web HTML biasa.

Tanpa cache, setiap pengguna yang masuk ke laman web akan meminta pangkalan data untuk maklumat dan PHP untuk memproses maklumat dan ia mengambil masa dan menggunakan sumber dari CPU serta RAM yang mana proses ini menyebabkan halaman load pada masa yang lambat.

Cadangan Plugin

  • LiteSpeed Cache – Jika anda menggunakan hosting yang datang dengan LiteSpeed Cache, digunakan untuk cache dan optimasi kelajuan.
  • *WP Fastest Cache – Ini ialah plugin percuma untuk cache dan optimasi kelajuan.
  • WP Rocket – Ini ialah plugin Premium untuk cache dan optimasi kelajuan.

Lain-lain Isu

Serangan Dari Luar dan Dalam

Serangan boleh menjadi punca kepada website menjadi lambat, antara serangan yang biasa berlaku antaranya ialah DDOS dan Bot. Ia boleh dielakkan dengan beberapa cara antaranya dengan memasangkan WAF atau Dinding Api Aplikasi Web. Sesetengah hosting telah datang dengan dinding api yang telah dipasangkan pada pelayan mereka sendiri.

Cadangan Plugin

CloudFlare

Banyak fungsi yang dapat digunakan dan bermanfaat dari CloudFlare untuk laman web yang anda bangunkan. Ia dapat meningkatkan kelajuan laman web anda dengan banyak cara antaranya ialah dengan cara pemampatan yang mana ia menggunakan brotli yang lebih mesra dengan SSL. Selain itu ia juga mempunyai fungsi cache luar tapak yang mana cache adalah disimpan oleh mereka yang menjadikan hosting kita kurang beban dan kurang menggunakan bandwidth.

Selain dari kelajuan, CloudFlare juga membantu mempertingkatkan keselamatan web anda di peringkat DNS yang mana ia meminimakan risiko terkena serangan DDOS dan sebagainya. Ada banyak lagi fungsi yang dibawa oleh CloudFlare walaupun menggunakan akaun yang percuma.

Akhir Kata

Terdapat pelbagai lagi cara dan teknik yang ada di luar sana untuk melajukan laman web. Tidak semua plugin yang dicadangkan boleh digunakan bersama-sama (terutama plugin cache). Jika terdapat idea lain bagi melajukan laman web sila ajukan di ruangan komen.

Buat kata sesetengah orang “Laju-laju nak pergi mana?”, setiap orang ada destinasinya dan ada asbabnya untuk laju dan ya betul laju belum lagi menentukan laman web tersebut menjual namun seperti biasa – laju dapat meningkatkan kecekapan laman web dipaparkan kepada pengguna. Tidak semua pengguna mempunyai akses kepada laman web yang laju dan mempunyai quota dan bandwidth yang tidak ada had.

Sebagai pembangun web yang baik, membangunkan laman web yang pantas untuk pelanggan ialah suatu tanggungjawab.

7 thoughts on “Idea Membangunkan Laman Web WordPress Pantas”

    1. Izzuddin Fauzi

      Yay! Macam site sekarang nie pun pakai NGINX, so bolehlah pakai Rocket-Nginx jadi proses lebih sikit NGINX → PHP-FPM → PHP → Static file kepada NGINX → Static file

  1. Izzuddin Fauzi

    Salam.
    Pengguna LiteSpeed Cache Plugin juga boleh try gunakan Quic Cloud CDN.
    Ada tight integration dengan LiteSpeed Cache..
    Worth checking it out..

    Den pun belum sempat nak godek lagi Quic Cloud nih. Depa ada server kat Singapore. So itu yang terdekat untuk Malaysia dan South East Asia Region kot.

    Biasa orang test kelajuan guna GTMetrix, Pingdom Tools dan Page Speed Insights. Tapi kesemua tool tersebut buat ujian dari luar Malaysia. So numbers dia agak tak berapa nak tepat sangat la.

    Kalau nak test dari Malaysia macam mana? Browser Inspect Tool ada. Tak pun guna LightHouse untuk Audit dalam Chrome Dev Tool..

    😀 😀 😀

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top [ghostbirdwp-honeypot]