Hosting Performa Tinggi untuk WordPress LearnDash

Diterbitkan: 2018-12-21

WordPress LearnDash bisa dibilang salah satu platform e-learning paling sukses di dunia LMS WordPress. Ini menawarkan fitur-fitur canggih untuk pembuatan kursus, monetisasi melalui integrasi gateway pembayaran, dan administrasi untuk profil pengguna, grup, dan tugas kursus. Ini bekerja di ponsel juga.

Meskipun LearnDash adalah pemain terkemuka, ini sangat intensif sumber daya. Secara alami, aplikasi yang perlu secara dinamis membuat konten yang dipersonalisasi secara real-time seperti LMS (Learning Management System) akan membutuhkan konten yang sebagian besar tidak di-cache dan pengguna harus masuk ke backend. LearnDash tidak terkecuali untuk masalah bawaan ini.

Dalam posting ini, kita akan melihat mengapa tidak banyak yang dapat dilakukan oleh penyedia hosting WordPress, selain mencocokkan daya CPU yang diperlukan agar LearnDash berfungsi dengan baik, dan bagaimana Pressidium mengatasi masalah kinerja umum ini.

Bagaimana sumber daya LearnDash WordPress intensif?

Tidak masalah jika Anda memiliki situs e-learning dengan lalu lintas rendah atau tinggi, Anda akan mengalami masalah teknis begitu Anda mulai mengajukan tuntutan padanya. Ini mungkin melalui jumlah pengguna terdaftar, jumlah kursus, jumlah pengguna aktif secara bersamaan, atau kombinasi dari semuanya. Masalah ini dapat berkisar dari penggunaan perangkat keras penuh dan pelambatan, masalah penulisan basis data hingga pengguna yang mengalami perlambatan parah, bahkan gangguan selama waktu kursus.

Pembatasan basis data dan konflik transaksi

LearnDash mengeksekusi beberapa set kueri SQL yang panjang. Misalnya, jika Anda memiliki banyak pengguna, katakanlah 20.000, LearnDash akan mengambil semuanya bahkan jika Anda hanya ingin memilih satu profil untuk diedit.

Solusi pengelompokan server dasar juga tidak banyak membantu dalam kasus ini. Hampir setiap tindakan yang dilakukan di LearnDash memperbarui database. Ketika kluster server yang melayani situs e-learning LearnDash Anda berada di bawah beban berat, node server kluster terus-menerus menulis ke database. Hal ini dapat menyebabkan konflik transaksi .

Dalam situasi lalu lintas tinggi, ini sering dapat mengakibatkan kunci tabel database, atau kunci database penuh, melarang akses tulis ke semua orang. Hal ini tentu saja sangat merugikan.

Utilisasi CPU puncak

WordPress LearnDash pada dasarnya adalah aplikasi dinamis yang tidak bekerja sama dengan baik dengan strategi caching. Ini bukan kesalahan LearnDash seperti yang kami katakan di awal, tetapi ini berarti Anda tidak bisa begitu saja mempercepat kinerjanya, hanya dengan men-cache respons HTTP.

Hal ini terjadi karena ada pengguna yang masuk, yang sedang menjalani tes pilihan ganda, dengan pengatur waktu & konten yang perlu dirender secara unik untuk mereka, dan hanya ada sedikit sekali yang dapat di-cache.

Jadi hampir semua konten tidak di-cache, berarti setiap pengguna LearnDash yang mengikuti tes, akan menelurkan setidaknya, 1 proses PHP backend. Bayangkan apa yang akan terjadi, jika 50 pengguna login hampir bersamaan!

Secara umum, agar pengguna mengalami sesi LearnDash yang lancar, mereka akan membutuhkan sumber daya CPU khusus. Namun, permintaan CPU tidak konstan, karena setiap pengguna mungkin menghabiskan waktu menganggur secara online, saat melakukan pengujian. Jika jumlah total proses PHP backend yang menunggu untuk dilayani adalah kelipatan dari total sumber daya kumpulan CPU Anda, dan Anda tidak melakukan sesuatu yang drastis untuk mengurangi beban (misalnya, mematikan beberapa di antaranya), longsoran salju akan mulai dan Anda akan kehilangan seluruh server.

Singkatnya, pengaturan VPS sederhana dan paket hosting WordPress yang bukan Enterprise hanya akan dapat menangani beberapa lusin pengguna yang masuk. Dalam kasus di mana semua pengguna melakukan beberapa tindakan hampir bersamaan, Anda akan mencapai puncaknya, dan semuanya akan mulai gagal.

Arsitektur Perusahaan untuk WordPress LearnDash

Sekarang kami telah secara singkat menyentuh beberapa tantangan kinerja LearnDash dan melukiskan gambaran yang sedikit membingungkan, kami ingin menunjukkan kepada Anda bagaimana kami mengatasinya di Pressidium, dan mengapa Arsitektur Perusahaan kami dianggap oleh komunitas LearnDash sebagai salah satu yang terbaik , jika bukan yang terbaik, platform untuk menjalankan LearnDash.

Sebenarnya, sebagian besar pesaing kami hanya mencegah situs LMS besar karena mereka tidak dapat mengatasi tuntutan yang ditempatkan pada infrastruktur mereka. Seperti yang telah kami sebutkan sebelumnya, pengaturan VPS sederhana, atau bahkan sistem pengelompokan dasar tidak dapat menangani lalu lintas tinggi atau dengan jumlah pengguna bersamaan yang tinggi. Inilah sebabnya kami tidak merekomendasikan atau mendorong penggunaannya pada paket standar kami dalam kasus ini. Satu-satunya pengecualian adalah untuk pengembangan atau pengaturan yang sangat kecil.

Kami biasanya merekomendasikan Pressidium Enterprise sebagai opsi terbaik untuk lokasi produksi besar yang menjalankan LearnDash. Kami berhasil mengelola dan mengoperasikan instalasi Enterprise LearnDash dengan ribuan pengguna secara bersamaan .

Untuk mengatasi masalah pembatasan basis data, kami telah mengembangkan teknik pengoptimalan basis data tertentu yang mempercepat LearnDash sambil mempertahankan Ketersediaan Tinggi (sayangnya LearnDash secara inheren tidak kompatibel dengan basis data Ketersediaan Tinggi multi-master). Kami menyebutnya sebagai "saus rahasia kami" karena teknik ini sangat disesuaikan dan disesuaikan dengan Arsitektur Perusahaan kami yang unik.

Perlu diingat, bahwa penyesuaian ini hanya dapat diterapkan pada Paket Perusahaan karena mereka menawarkan kluster server perusahaan khusus yang Anda inginkan. Mereka juga dapat diterapkan ke plugin LMS lainnya, jika Anda tidak menggunakan LearnDash di kelas Anda.

Solusi kami untuk masalah CPU puncak, di sisi lain, jauh lebih mudah: tambahkan lebih banyak tenaga kuda CPU mentah. Inilah alasan kami tidak menggunakan penyedia komputasi awan tujuan umum seperti Google Cloud atau AWS, tetapi membangun platform kami sendiri dari awal. Hasilnya adalah efisiensi biaya yang berarti lebih banyak sumber daya bagi pelanggan kami pada tingkat harga yang sama atau bahkan lebih rendah dari pesaing kami:

Konfigurasi Ketersediaan Tinggi 2N+1 dalam cluster server khusus 5 node yang seimbang dengan faktor isolasi dan redundansi yang lebih tinggi. Ini memungkinkan situs LearnDash WordPress Anda melakukan penskalaan otomatis selama lonjakan lalu lintas dan efek slashdot, dan menjadi sangat tersedia dan toleran terhadap kesalahan.

Kami bangga dengan kemampuan kinerja LearnDash platform kami, karena ini benar-benar mengurangi stres pemilik situs LearnDash, karena harus berurusan dengan masalah teknis di tengah sesi. Tetapi kami bahkan lebih bangga karena Arsitektur Perusahaan kami mendukung impian pembelajaran dan kebutuhan pengguna LearnDash, dari seluruh dunia.

Bergabunglah dengan Pressidium dan ubah situs LearnDash Anda menjadi pusat e-learning berkinerja tinggi. Bagikan tantangan LearnDash Anda dengan teknisi kami dan minta penawaran perusahaan dengan mengeklik tombol di bawah!