it-swarm-vi.com

Hiệu suất của Joomla trên IIS

Chúng tôi có một trang web được lưu trữ trên máy chủ IIS 7.5.

Chúng tôi có một bản sao của cùng một trang web trên máy chủ Apache2.2/Centos 6.x.

Trên IIS trang web chậm hơn (khoảng hai lần hoặc thậm chí nhiều hơn) và cho đến nay chúng tôi vẫn chưa thể cải thiện thời gian phản hồi của máy chủ và/hoặc tốc độ trang web nói chung (giao diện và phụ trợ ).

Tôi không biết về IIS, vì vậy thật khó để biết phải làm gì (đối với tôi).

Cho đến nay chúng tôi đã cố gắng:

  • Một số điều chỉnh MySQL
  • Kích hoạt tính năng nén Gzip mà không thành công.
  • Tiện ích mở rộng Jotcache (nó hoạt động nhưng trang web vẫn chậm hơn trên Apache)
  • Vô hiệu hóa hoặc gỡ cài đặt các phần mở rộng không cần thiết.
  • Tối ưu hóa chuyên nghiệp
  • Không PHP Cache (có ý tưởng nào không?)

Tôi đoán là chúng ta cần/nên làm việc trên cấu hình máy chủ/php/mysql, tuy nhiên tôi không biết có điều gì đặc biệt mà chúng ta nên làm để cải thiện hiệu suất trên IIS và làm cho nó nhanh nhất có thể như trên Apache. Chúng ta có thể làm gì để cải thiện hiệu năng trên IIS?

Ngay bây giờ thời gian phản hồi máy chủ của chúng tôi dài hơn 1,5 giây trên trang web IIS và khoảng 0,4 giây trên Apache.

8
Shaz

Xin lưu ý rằng PHP thường chậm hơn Windows so với hệ điều hành giống Unix. Mọi thứ đã trở nên tốt hơn với phiên bản mới hơn (cập nhật!) Nhưng vẫn có sự khác biệt có thể đo lường được.

Điều đó nói rằng có hai bước lớn cần thực hiện khi tối ưu hóa máy chủ của bạn PHP hiệu suất:

  1. Sử dụng FastCGI

    Mặc dù fpm chỉ hoạt động trên Unix, FastCGI cũng hoạt động với IIS trong Windows. Đây là hướng dẫn từ chính Microsoft về cách thực hiện: http://www.iis.net/ tìm hiểu/khung ứng dụng/chạy-php-application-on-iis/set-up-fastcgi-for-php

  2. Sử dụng bộ đệm Opcode

    Một lần nữa Microsoft bảo vệ bạn với phần mở rộng WinCache .

Nếu bạn vẫn gặp sự cố về hiệu suất sau các bước này, tôi khuyên bạn nên cấu hình cả phiên bản Windows và Linux. Bạn có thể sử dụng xhprof hoặc Xdebug . Cố gắng tìm hiểu xem bạn có vấn đề với hiệu suất PHP hay MySQL. Một thử nghiệm khác bạn có thể làm là phục vụ cả hai bản sao từ cùng một máy chủ cơ sở dữ liệu (cần phải là máy chủ thứ ba). Điều đó sẽ nhanh chóng cho bạn biết liệu bạn có PHP hoặc sự cố MySQL.

3
Rouven Weßling