Jelas tidak ada skala dan juga file statis yang dilayani oleh server web cepat dan CMS apa pun yang harus mencari tahu apa yang akan dimuat dan kemudian memuatnya tidak akan berfungsi dengan baik, WordPress atau lainnya. Salah satu masalah adalah jumlah permintaan basis data yang diperlukan per permintaan URL dan 2 tahun pengalaman saya sebelumnya bekerja secara eksklusif dengan Drupal dan sekarang 2+ tahun dengan WordPress adalah bahwa WordPress jauh lebih baik di departemen itu.
Yang mengatakan, hampir tidak ada dengan kekuatan apa pun yang akan skala "out-of-the-box" ; itu semua tentang apa yang dapat Anda lakukan saat skalabilitas Anda tumbuh?
Pada ujung rendah "banyak lalu lintas" ada plugin caching yang hebat dan integrasi dengan CDNs murah Anda dapat melakukan pekerjaan yang cukup baik dengan anggaran tanpa TI dan anggaran hosting yang rendah. Berikut beberapa pertanyaan & jawaban untuk ditinjau:
Ada beberapa opsi untuk membuat profil untuk mengidentifikasi hambatan kinerja :
Setelah kemacetan teridentifikasi, Anda dapat melakukan optimasi yang dilokalisasi dengan hal-hal seperti Transients API . T&J ini memberikan contoh yang dapat dioptimalkan menggunakan API Transien dan menunjukkan caranya:
Jika Anda benar-benar ingin mengeluarkan senjata besar, Anda dapat mengonfigurasi Memcached , HyperDB , Nginx dan / atau lebih banyak untuk mempercepat (sepertinya yang terakhir ini benar-benar berkembang menjadi cara untuk mendapatkan skalabilitas yang luar biasa dari WordPress):
Dan akhirnya ada webhosting WordPress-terfokus yang muncul yang mengkhususkan diri dalam kinerja seperti WP Engine , ZippyKid dan lainnya:
Jadi kabar baiknya adalah semua timbangannya sangat bagus ; dari ujung yang sangat rendah gratis dan mudah dengan kompleksitas teknis dan biaya hanya tumbuh seiring dengan pertumbuhan lalu lintas yang signifikan. Mulai dari yang kecil dengan WordPress dan itu akan menjadi luar biasa. Jika lalu lintas Anda tumbuh dan Anda menghasilkan uang dengan cukup baik, Anda akan merasakan efek biaya yang sangat besar untuk skala yang Anda butuhkan.
Setidaknya IMO. :)
Jangan berharap banyak dari shared hosting - jangan salahkan WordPress atas kelambatan jika Anda menggunakan host bersama. Host bersama mungkin menjejalkan 1000 akun ke satu server. Jadi, Anda dapat menghabiskan sepanjang hari mengoptimalkan akun $ 10 / bulan dan itu tidak masalah. Juga perhatikan buzzword pemasaran - hanya karena dikatakan "cloud" tidak berarti Anda tidak berbagi satu server dengan 100-an atau 1000-an orang.
Saya tidak berpikir plugin cache diperlukan pada saat ini. Jika Anda melihat kode sumber WP, sudah ada caching lanjutan yang dimasukkan ke dalam inti. Cache cache cache cache - hati-hati, ini bisa menjadi kontraproduktif.
Hal utama yang memperlambat Anda adalah permintaan MySQL yang lambat dan WordPress out-of-the-box seharusnya tidak memberi Anda masalah di sini. Namun, saya harus "LIMIT" kueri komentar saya karena saya punya 50.000+ komentar. (Apakah ini sudah diperbaiki?) Juga, jika Anda melakukan sesuatu yang tidak biasa (seperti 1000-an kategori?) Itu bisa menjadi masalah juga.
Saya menggunakan Linode 512 dengan NginX dan "top" menunjukkan PHP dan NginX melakukan pekerjaan mereka dalam waktu kurang dari 1/100 per detik per permintaan. Hampir semua waktu CPU terkait dengan MySQL. Anda dapat melayani 1 juta halaman per bulan dengan Linode $ 20, tetapi begitu Anda mulai menambahkan plugins dan foto, saya pikir Anda akan membutuhkan Linode "1GB". Dari sudut pandang saya, ini cukup linier: Jika tampilan halaman ganda, cukup gandakan ukuran Linode Anda.
Penafian: Saya tidak bekerja untuk Linode.
Perbarui (~ 2 tahun kemudian) karena Anda ingin men-cache bagian dari halaman dengan PHP, berikut ini adalah solusi sederhana yang saya gunakan dengan sangat cepat. Saya menyimpan beberapa bagian / bagian terpisah per halaman dalam 1/100 detik. Sepertinya ramdisk dapat membuat ini lebih cepat tetapi banyak yang cepat untuk kebutuhan saya:
sumber
Pada akhirnya ada 3 hal yang memperlambat WordPress pada skala, dan mereka bermuara pada ini:
Setelah Anda memiliki hal-hal di atas, Anda kemudian dapat menambahkan caching - mis. Varnish, CDNs, caching halaman dll.
Jika Anda perlu memperkecil, Anda dapat membuat sebuah cluster menggunakan PerconaDB XtraDB untuk database dan Unison untuk file. Dengan begitu, Anda dapat memiliki 1 node sebagai wp-admin dan cron runner, dan node lainnya melayani lalu lintas web di belakang load balancer.
sumber