В настоящее время у нас есть веб-сервер Windows. Он запускает Apache и PHP как модуль. Сам сервер - чудовище, но PHP плохо работает в среде Windows при установке в качестве модуля Apache, и мы сталкиваемся с этим на собственном опыте.
В любом случае, в эти выходные я планирую перенастроить сервер для установки FastCGI вместо этого, и я собирался использовать IIS7 вместо Apache. Проблема в том, что у нас есть много сайтов, настроенных с файлами .htaccess, и мы не были заинтересованы в их очистке, чтобы сайты работали правильно в IIS.
Мой вопрос: кто-нибудь знает, имеет ли PHP, установленный как FastCGI на Apache, скорость, сопоставимую с IIS? Вы можете прочитать в Интернете, насколько быстрым является PHP на IIS, но теперь мы рассматриваем возможность использования Apache для облегчения перехода.
Если Apache не будет хорошим вариантом, я думаю, мы сделаем маршрут IIS и просто исправим неисправные сайты, но мы как бы хотим избежать этого, если Apache даст нам сопоставимую производительность с использованием Fast-CGI.
Что вы думаете?
После тестирования mod_php был безусловно самым быстрым, а mod_fcgid - вторым.
IIS был медленнее Apache с заметной разницей.
Если кто-то и нажимает на это из поиска Google, наша проблема с медлительностью связана с нашим подключением к базе данных с использованием localhost, а не 127.0.0.1. Начиная с Windows Server 2008, localhost больше не находится в файле hosts (закомментировано) и вместо этого разрешается через преобразователь DNS, который, по-видимому, довольно медленный.
IIS намного безопаснее, чем Apache в Windows. Узнайте, от имени какого пользователя Apache будет запускать PHP, и насколько он изолирован. А затем проверьте это с помощью IIS. Также вы можете скомпилировать этот код с помощью Phalanger, что очень удобно для тестов.