Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. PHP

Mendiagnosis Masalah Kinerja WordPress dengan New Relik

by
Read Time:12 minsLanguages:
This post is part of a series called Performance Monitoring With New Relic.
Introduction to New Relic Synthetics
Get Started With Monitoring Your Web Application Using New Relic Alerts
Sponsored Content

This sponsored post features a product relevant to our readers while meeting our editorial guidelines for being objective and educational.

Indonesian (Bahasa Indonesia) translation by Muhammad Gufron (you can also view the original English article)

Final product imageFinal product imageFinal product image
What You'll Be Creating

Tutorial ini berlanjut di tempat kami tinggalkan dalam Menggunakan Relik Baru untuk Memantau Kinerja WordPress. Di sini, saya akan memberi Anda gambaran konseptual WordPress kinerja dan membimbing Anda melalui menggunakan New Relic untuk memeriksa kinerja situs Anda sendiri.

Jika Anda tiba di sini dari Mengoptimalkan WordPress dengan Varnish dan W3 Total Cache tutorial, Anda sudah memiliki yayasan WordPress yang cukup dioptimalkan. Jika tidak, Anda mungkin ingin kembali dan memeriksa artikel.

Menggunakan New Relic Dengan WordPress

WordPress adalah sistem blogging open source yang powerful yang dapat mendukung blog individu kecil dan situs yang lebih besar untuk organisasi media besar. Tapi benar-benar menjalankan WordPress juga, dan skala itu berhasil dan terjangkau, memerlukan banyak kecanggihan.

Layanan pemantauan kinerja New Relic menyediakan cara terbaik untuk memastikan konfigurasi WordPress Anda tetap berjalan dengan lancar dan efisien.

Catatan: New Relik memperingatkan bahwa layanannya paling baik digunakan untuk mengoptimalkan WordPress pada server khusus, bukan server virtual atau bersama, seperti yang ditawarkan oleh banyak penyedia berbasis cloud. Jika Anda menjalankan WordPress di shared host, New Relik mungkin tidak bermanfaat bagi Anda seperti untuk situs yang berjalan pada server khusus.

Jika Anda ingin mempelajari lebih lanjut tentang New Relic sebelum menyelam ke panduan kinerja ini, Tuts + memiliki berbagai artikel pada layanan mereka.

Apa yang Membuat WordPress Cepat atau Lambat?

Pada tahun 2013, Frederick Townes, pencipta plugin W3 Total Cache WordPress gratis, menulis posting blog untuk New Relik yang menjelaskan aspek kinerja yang perlu kita pertimbangkan: Optimasi Kinerja WordPress dengan New Relik. Ini adalah ringkasan yang sangat baik yang saya akan review.

Townes menyoroti area inti yang perlu kita fokuskan:

1. Kinerja Disk. Disk lokal yang tidak dibagikan akan selalu memberikan kinerja yang paling konsisten dan dapat diandalkan. Misalnya, menggunakan host yang menawarkan SSD drive atau hard drive kecepatan tinggi sangat ideal.

2. MySQL Query Cache. Query cache mempertahankan hasil query database Umum dan dapat kembali hasil segera tanpa harus melakukan mereka berulang kali. Townes merekomendasikan berjalan MySQLTuner untuk membantu dengan optimal tuning konfigurasi database Anda.

3. Penggunaan Queries oleh Tema dan Plugin WordPress Anda. Out of the box, WordPress dikonfigurasi untuk berjalan dengan baik, tetapi ketika kami menambahkan plugin dan tema pihak ketiga, kami dapat mengalami berbagai kode buruk yang dapat menyebabkan masalah kinerja.

4. Ukuran File dari Tema dan Plugin WordPress Anda. Mengurangi ukuran file dan jumlah file (dan karena itu transaksi HTTP) memiliki dampak yang dramatis pada pengalaman pengguna dengan situs Anda. Sayangnya, tidak semua Cascading Style Sheets (CSS) atau JavaScript (JS) dapat dengan mudah konsolidasi dan diminimalkan.

5. Mengoptimalkan PHP, yang merupakan relatif lambat. Cepat versi PHP seperti HHVM mungkin cocok untuk WordPress di masa depan, tetapi saya telah membaca bahwa memang belum stabil untuk tugas ini. Sementara itu, Townes menawarkan daftar saran: kurangi jejak memori skrip Anda, gunakan autoload, gunakan penghafalan, hindari loop, kurangi waktu eksekusi, minimalkan jumlah file yang dibuka untuk mengurangi panggilan ke disk dan penggunaan memori, dan gunakan incoude dan require daripada include_once dan require_once.

6. Menggunakan Opcode Caching seperti APC, open source caching kerangka untuk kode PHP. Mengatakan Townes: "APC menyimpan versi (eksekusi) ditafsirkan kode dalam memori sehingga yang permintaan untuk ini tidak harus ditafsirkan ulang."

"WordPress' objek cache adalah dimana banyak keajaiban terjadi. Ada berbagai kelompok objek yang dihasilkan oleh WordPress ketika itu proses permintaan halaman. Kelompok ini melayani banyak tujuan, dan tergantung pada bagaimana Anda menggunakan WordPress, peningkatan kinerja yang sangat signifikan diwujudkan dengan terus-menerus menyimpan objek menggunakan memcached atau backend store APC misalnya. "

Townes 'W3 Total Cache menerapkan ini pada tingkat cache halaman, memungkinkan untuk skenario di mana bagian-bagian dari halaman tertentu masih dapat dihasilkan oleh PHP sementara bagian yang lebih besar dari halaman yang tidak berubah adalah cache dan tidak diregenerasi.

"W3TC akan memungkinkan Anda untuk memilih data store selain MySQL seperti memcached, yang dirancang untuk kecepatan tinggi akses dari beberapa aplikasi server. Jadi daripada setiap permintaan halaman yang sudah perlu mengambil informasi masing-masing tentang pengunjung atau elemen dinamis lainnya, MySQL sekarang dapat fokus (dan disetel untuk) hanya bagian dinamis dari template Anda. "

Mengatakan Townes, "Fragment caching akan mengurangi waktu eksekusi Anda dengan perintah besarnya."

7. Menggunakan Cache Halaman. Teknik yang paling bermanfaat untuk skala situs web khas adalah caching halaman. Daripada menekan seluruh tumpukan Anda dengan setiap permintaan halaman — WordPress, Tema, Plugin, HTML, dan MySQL — kita cukup mengambil HTML statis dari cache web, sering dari memori. Lalu lintas skala uncached WordPress situs dapat mengambil dalam hitungan detik, sedangkan skala pra-menulis file HTML dari dalam memori cache lalu lintas besar-besaran scalable.

Townes Mengatakan: "Reverse proxy sering memberikan caching yang duduk di antara aplikasi web dan Internet publik. Tujuannya adalah untuk meringankan beban pada server web di belakang mereka. Reverse proxy yang dioptimalkan untuk kembali konten yang dihasilkan oleh aplikasi dasar. Varnis, Nginx atau bahkan Apache dapat dikonfigurasi untuk menyediakan fungsionalitas reverse proxy."

Saya sering menggunakan Varnis dengan Apache dan W3 Total Cache dalam kombinasi untuk skala WordPress. Jika Anda tertarik dalam konfigurasi ini, check out: Mengoptimalkan WordPress dengan Varnish dan W3 Total Cache (Tuts +).

8. Content Delivery Networks (CDNs) adalah berbasis layanan caching file yang sering digunakan dan media. Townes mengatakan: 'Dengan CDN, tidak masalah di mana situs Anda dihosting. Jika Anda memiliki pengunjung di belahan dunia lainnya, CDN menyimpan konten tersebut di dekat mereka dan mengumpulkan detik secara agregat dari total waktu buka halaman untuk situs Anda. "

Sekarang kita tahu beberapa konsep kunci dari apa yang membuat WordPress berjalan dengan baik, mari kita lihat bagaimana New Relic dapat membantu kita.

Menggunakan New Relik untuk Memantau WordPress

New Relic adalah layanan pemantauan kinerja yang berjalan dengan berbagai teknologi server dan bahasa, termasuk PHP, menjadikannya hebat untuk mengoptimalkan WordPress.

New Relic menyediakan pemantauan kinerja dari tumpukan penuh — apa pengalaman pengguna akhir — tetapi juga menyediakan pemantauan server terperinci. Townes Mengatakan, "New Relic membuat itu sepele untuk menyebarluaskan kejadian di di lingkungan Anda."

Ketika Anda menjalankan New Relic di server Anda, Anda bisa mendapatkan grafik dan statistik pemantauan kinerja terperinci tentang server dan PHP Anda, termasuk: waktu respons, Apdex score (rasio waktu respons yang memuaskan hingga waktu respons yang tidak memuaskan), hasil (permintaan per menit) , misalnya, transaksi web permintaan API pihak ketiga, tingkat kesalahan, kejadian terkini, dan informasi server.

New Relic BrowserNew Relic BrowserNew Relic Browser

Pergi lebih jauh lagi, New Relic Browser monitor halaman penuh lifecycle data — baik di luar beban halaman awal. Untuk setiap pemuatan akhir halaman pengguna, New Relic Browser menangkap:

  • waktu yang dihabiskan di ujung depan (browser)
  • kode dan acara-acara yang dilaksanakan dalam browser (interaksi JavaScript, Ajax dan pengguna akhir)
  • waktu yang dihabiskan di back-end (jaringan dan web app)
  • geographic origin
  • jenis dan versi browser, dan sistem operasi

Anda dapat melihat data secara global di seluruh semua pengguna dan melihat itu diiris dan dipotong dadu oleh halaman web, browser, sesi pengguna dan lokasi.

Saya menutup New Relic Browser lebih lengkap di Front End Monitoring dengan New Relic Browser (Tuts +).

New Relic Synthetics memungkinkan Anda untuk mengatur tes rutin situs Anda dari seluruh dunia untuk memberitahukan Anda segera tentang masalah ketika mereka muncul. Saya akan membahas Synthetics dalam tutorial yang akan datang, jadi kunjungi halaman instruktur Tuts + saya untuk melihat kapan rilis.

Menggunakan New Relic dengan W3 Total Cache

Sign Up for New RelicSign Up for New RelicSign Up for New Relic

Saya menjelaskan proses pendaftaran dan pemasangan untuk integrasi layanan W3 Total Cache New Relic dalam tutorial ini: Menggunakan Relik Baru untuk Memantau Kinerja WordPress (Tuts +).

Dari konsol administrasi WordPress Anda, klik Performance > Monitoring. Klik sign up for a free account. Salin detail untuk API dan kunci lisensi Anda ke panel pengaturan W3 Total Cache di bawah ini:

Enter your New Relic API and license key in W3TC settingsEnter your New Relic API and license key in W3TC settingsEnter your New Relic API and license key in W3TC settings

Mengaktifkan New Relik di server Anda menyediakan pemantauan dari dashboard W3TC, seperti yang ditunjukkan di bawah ini:

W3 Total Cache Dashboard Panel for New RelicW3 Total Cache Dashboard Panel for New RelicW3 Total Cache Dashboard Panel for New Relic

Untuk lebih jelasnya, Anda dapat mengunjungi situs New Relic dan log in ke account Anda.

Memantau Kinerja WordPress Anda

Menilai Kinerja Server

Pada tingkat yang tinggi, pemantauan New Relic Server memberi Anda ikhtisar tentang penggunaan CPU, penggunaan memori, dan disk dan jaringan I / O, serta informasi tentang perangkat keras Anda dan sebagian besar proses aktif. Ini dapat memberi Anda pandangan mata burung tentang apa yang terjadi dengan konfigurasi Anda dan memberi tahu Anda tentang masalah yang signifikan:

New Relic Servers DashboardNew Relic Servers DashboardNew Relic Servers Dashboard

Tab proses menunjukkan Anda memori dan pemanfaatan CPU masing-masing proses:

New Relic ProcessesNew Relic ProcessesNew Relic Processes

Anda juga dapat melihat riwayat lansiran, yang menunjukkan tanda merah dengan kinerja situs Anda:

New Relic Server Alert HistoryNew Relic Server Alert HistoryNew Relic Server Alert History

Mengevaluasi Kinerja WordPress

New Relic berguna untuk mengevaluasi kinerja WordPress dengan tiga cara utama:

1. Apdex. New Relic menggunakan Apdex scoring untuk membantu Anda mengevaluasi seberapa baik kinerja aplikasi Wordpress Anda bagi pengguna akhir Anda, menurut pengukuran standar industri. Ini membantu Anda memberikan data yang lebih baik untuk pemecahan masalah, dan mendapatkan pemahaman yang lebih jelas tentang berapa persentase pengguna Anda yang frustrasi atau puas. Apdex mencetak juga menyediakan konteks yang lebih spesifik daripada seorang Jenderal "situs lambat" keluhan yang mungkin bahkan tidak mendapatkan Anda sampai jam setelah insiden. Apdex juga memberi Anda cara yang lebih obyektif untuk mengukur seberapa baik peningkatan kinerja Anda dirasakan oleh pengguna Anda yang sebenarnya.

2. MySQL Performance. Plugin dan tema Wordpress mungkin menyalahgunakan database mySQL saya. Anda dapat menentukan mana yang menyebabkan masalah dengan melihat SQL lambat di New Relic. Misalnya, Anda mungkin melihat bahwa memilih pada wp_terms, yang digunakan untuk kategori dan tag, mungkin menghabiskan 20% dari total waktu basis data Anda. Atau, Anda mungkin melihat pernyataan INSERT yang lambat yang dapat ditingkatkan dengan indeks yang ditempatkan dengan baik atau kueri yang disempurnakan.

3. Memantau Kinerja Plugin Pihak Ketiga dan API. Menggunakan plugin media sosial, plugin pemantauan, dan widget keren lainnya sangat mudah di WordPress, tetapi mungkin tidak langsung jelas bagaimana ketergantungan pihak ketiga tersebut memengaruhi blog atau situs pemasaran Anda. New Relic memungkinkan Anda untuk melihat layanan eksternal dipanggil 'rolled up' untuk tampilan yang lebih holistik, dan Anda juga dapat memantau waktu respons dari pihak ketiga tersebut dalam setiap transaksi web, New Relic menangkap.

Kita dapat menggunakan Browser New Relik untuk mempelajari kinerja WordPress secara lebih terperinci. Anda ingin terutama mencari kode dari tema dan plugin yang mungkin secara negatif mempengaruhi performa kami.

Dasbor memberikan Anda gambaran dari waktu buka halaman yang diuraikan oleh Apdex dan throughput:

New Relic Browser OverviewNew Relic Browser OverviewNew Relic Browser Overview

Berikut ini adalah tampilan diperbesar dari skor Apdex saya selama 24 jam terakhir:

New Relic Apdex Score over 24 HoursNew Relic Apdex Score over 24 HoursNew Relic Apdex Score over 24 Hours

Anda juga dapat melihat kinerja berdasarkan tampilan halaman:

New Relic Page View SegmentationNew Relic Page View SegmentationNew Relic Page View Segmentation

Ketika Anda menelusuri, Anda dapat melihat kinerja masing-masing file yang dimuat oleh situs Anda. Anda ingin untuk mencari file tema atau plugin yang mengambil jumlah waktu yang mencurigakan:

New Relic Script AnalysisNew Relic Script AnalysisNew Relic Script Analysis
New Relic Page PerformanceNew Relic Page PerformanceNew Relic Page Performance

MySQL Analysis

Pemantauan server Relic baru juga dapat melacak kinerja kueri MySQL Anda:

New Relic APM Database MySQL Query TrackingNew Relic APM Database MySQL Query TrackingNew Relic APM Database MySQL Query Tracking

Anda dapat menelusuri untuk detail tambahan:

New Relic APM Database MySQL Query Tracking Detail ViewNew Relic APM Database MySQL Query Tracking Detail ViewNew Relic APM Database MySQL Query Tracking Detail View

Dan mendiagnosis queri paling lambat:

New Relic APM Database MySQL Tracking Slow QueriesNew Relic APM Database MySQL Tracking Slow QueriesNew Relic APM Database MySQL Tracking Slow Queries

Ini dapat sangat berguna untuk mengidentifikasi queri lambat yang dibuat oleh kode plugin yang buruk.

Session Traces

Session traces memberi Anda visibilitas ke seluruh siklus hidup laman web, termasuk interaksi pengguna, pemuatan aset, iframe, waktu yang dihabiskan menunggu panggilan Ajax, kesalahan, dan lainnya — melacak pengalaman nyata pengguna nyata dari awal hingga akhir.

Tidak hanya jejak mengidentifikasi masalah, tetapi mereka juga dapat menunjukkan kepada Anda apa yang dilakukan pengguna sebelum dan sesudah kesalahan terjadi.

New Relic Session TracesNew Relic Session TracesNew Relic Session Traces

Berikut ini detailnya tentang sesi Anda. Ini dapat membantu menilai kinerja kode dalam tema serta plugin:

New Relic Session Traces DetailNew Relic Session Traces DetailNew Relic Session Traces Detail

Session traces membantu Anda memahami:

  • bagaimana pengguna mengalami pemuatan halaman Anda, termasuk waktu untuk beban DOM, waktu menunggu permintaan Ajax selesai, dan interaksi pengguna dengan halaman
  • urutan even JavaScript dan browser, yang memakan waktu lebih lama dari yang lain, dan ketika setiap peristiwa terjadi
  • di mana kemacetan terjadi, dan apa yang mungkin menyebabkannya
  • mengapa satu halaman memuat mungkin lebih lambat daripada yang lain, dengan menyediakan konteks untuk masing-masing peristiwa selama sesi

Anda dapat melihat persis apa terjadi di browser pengguna tertentu pada saat tertentu. Jejak sesi memberi Anda visualisasi yang terperinci dan intuitif dari semua peristiwa di sesi pengguna dan dapat membantu menentukan area masalah dan mengidentifikasi solusi dengan mudah. Baca lebih lanjut tentang menggunakan jejak sesi.

Ajax dan JavaScript

Halaman Ajax memungkinkan Anda untuk melihat apa yang terjadi dengan panggilan interaktif apa pun yang Anda miliki di laman, membantu mengidentifikasi masalah dengan pengalaman pengguna Anda saat Anda memiliki panggilan yang memakan waktu atau gagal:

New Relic AJAX AnalysisNew Relic AJAX AnalysisNew Relic AJAX Analysis

Perhatikan bahwa New Relic Browser tidak secara otomatis merekam data Ajax. Anda perlu mengaktifkannya untuk setiap aplikasi di area pengaturan New Relic. Baca lebih lanjut tentang dasbor Ajax.

Dasbor error JavaScript Browser memungkinkan Anda melihat dengan cepat kesalahan apa yang terjadi di dalam JavaScript produksi langsung Anda dari waktu ke waktu, di mana browser. Anda dapat menyelidiki kesalahan berdasarkan berapa kali masing-masing terjadi dan jumlah pemuatan halaman unik yang mengalami kesalahan itu.

Ini memungkinkan Anda mengidentifikasi kesalahan yang memengaruhi pengalaman pengguna nyata di situs Anda; ini merupakan cara ampuh untuk mempelajari kesalahan JavaScript yang tidak muncul dalam pengujian Anda sendiri — atau pada browser yang mungkin Anda kecualikan dari testbed Anda.

New Relic Javascript AnalysisNew Relic Javascript AnalysisNew Relic Javascript Analysis

Melihat ke depan

WordPress self-hosting membutuhkan keterampilan teknis tingkat tinggi. Jika Anda tidak siap, host yang dikelola adalah alternatif yang lebih baik. Banyak dari ini menggunakan Relik Baru secara internal untuk mengoptimalkan situs mereka sendiri, mis. Page.ly.

Menyelam lebih dalam ke New Relic membutuhkan investasi waktu, tetapi hasilnya sangat berharga. Dengan tool ini, Anda dapat melihat di dalam tumpukan WordPress Anda untuk cepat memilih area masalah yang perlu ditangani.

Jika Anda melakukan self-host, layanan New Relic dapat menjadi cara yang sangat kuat untuk melihat ke lingkungan hosting Anda sendiri dan WordPress stack Anda, tema dan plugin-dan mendapat kinerja terbaik.

Dalam proses peluncuran Anda (dan proses pengembangan Anda jika Anda membangun tema dan plugin Anda sendiri), Anda pasti ingin menelusuri situs Anda dengan New Relic.

Meskipun Anda dapat menggunakan New Relic Lite selamanya, setelah masa percobaan dua minggu Anda berakhir, Anda mungkin ingin upgrade ke paket Pro ($149/bulan) untuk mempertahankan tingkat layanan yang sama. New Relic Browser, Synthetics, dan Insight baru memiliki struktur penetapan harganya sendiri — pelajari lebih lanjut di situs web New Relic.

Jika Anda memiliki pertanyaan atau koreksi, silahkan posting di komentar. Jika Anda ingin mengikuti saya di Tuts + tutorial dan seri lainnya, silakan kunjungi halaman instruktur saya atau follow @reifman.

Link Terkait

Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.