Kinerja Joomla di IIS

8

Kami memiliki situs web yang di-host di server IIS 7.5.

Kami memiliki salinan situs web yang sama di server Apache2.2 / Centos 6.x.

Pada IIS situs lebih lambat (sekitar dua kali lebih lama atau bahkan lebih) dan sejauh ini kami belum dapat meningkatkan waktu respons server dan / atau kecepatan situs secara umum (frontend dan backend).

Saya tidak tahu tentang IIS, jadi sudah rumit untuk mengetahui apa yang harus dilakukan (untuk saya).

Sejauh ini kami telah mencoba:

  • Beberapa penyetelan MySQL
  • Mengaktifkan kompresi Gzip tanpa hasil.
  • Ekstensi Jotcache (berfungsi tetapi situs web masih lebih lambat daripada di apache)
  • Menonaktifkan atau menghapus instalan ekstensi yang tidak dibutuhkan.
  • JCH Optimize pro
  • Tidak ada Cache PHP (ada ide?)

Dugaan saya adalah bahwa kita perlu / harus bekerja pada konfigurasi server / php / mysql, namun saya tidak tahu apakah ada sesuatu yang istimewa yang harus kita lakukan untuk meningkatkan kinerja pada IIS dan membuatnya secepat mungkin seperti pada apache . Apa yang dapat kita lakukan untuk meningkatkan kinerja pada IIS?

Saat ini waktu respons server kami lebih dari 1,5 detik di situs web IIS dan sekitar 0,4 detik pada apache.

Shaz
sumber

Jawaban:

3

Sadarilah bahwa PHP pada umumnya lebih lambat di bawah Windows daripada di bawah sistem operasi mirip Unix. Semuanya menjadi lebih baik dengan versi yang lebih baru (pembaruan!) Tetapi masih ada perbedaan yang terukur.

Yang mengatakan ada dua langkah besar yang harus diambil ketika mengoptimalkan kinerja PHP server Anda:

  1. Gunakan FastCGI

    Sementara fpm hanya berfungsi di Unix, FastCGI juga bekerja dengan IIS di Windows. Berikut adalah tutorial dari Microsoft sendiri tentang cara melakukannya: http://www.iis.net/learn/application-frameworks/running-php-applications-on-iis/set-up-fastcgi-for-php

  2. Gunakan cache Opcode

    Sekali lagi Microsoft telah Anda lindungi dengan ekstensi WinCache .

Jika Anda masih memiliki masalah kinerja setelah langkah-langkah ini, saya sarankan untuk membuat profil versi Windows dan Linux. Anda dapat menggunakan xhprof atau Xdebug . Coba cari tahu apakah Anda memiliki masalah dengan kinerja PHP atau MySQL. Tes lain yang dapat Anda lakukan adalah melayani kedua salinan dari server database yang sama (harus menjadi server ketiga). Itu akan dengan cepat memberi tahu Anda apakah Anda memiliki masalah PHP atau MySQL.

Rouven Weßling
sumber