|
Пускач для FastCGIПускач для FastCGI - свободно распространяемое ПО с открытым исходным кодом, разработанное Zahodi-ka.ru для запуска и управления приложениями, реализующими интерфейс FastCGI. FastCGI - интерфейс взаимодействия между web-сервером и приложением, позволяющий создавать высоко производительные приложения-службы, занимающиеся поточной обработкой запросов. Интерфейс поддерживается большим числом web-серверов (Nginx, Apache, Ligttpd и др.), под многие языки программирования есть модули, упрощающие разработку FastCGI-приложений (C/C++, Perl, PHP, Java и др.). Поточная обработка запросов, давая выигрыш в производительности, одновременно снижает надежность приложения. Например, сбой в работе CGI-приложения приводит к отказу обработки одного запроса пользователя, сбой в работе FastCGI - к отказу всего сервиса, который предоставляет приложение. Также стандарт не предусматриваем механизма параллельной обработки запросов. Для решения этих задач и служит Пускач, он является промежуточным звеном между web-сервером и FastCGI-приложением. То есть сервер «видит» его как единственное приложение, обрабатывающее все запросы. Запросы от сервера распределяются между работающими FastCGI приложениями. В случае необходимости параллельной обработки может запускаются несколько копий одного приложения. Приложения, простаивающие в течение длительного времени, могут останавливаться для освобождения ресурсов. Упавшие (не отвечающие) приложения перезапускаются. Кроме того контролируется зависание приложений (слишком долгая обработка запроса), есть возможность ограничить время непрерывной отдачи данных пользователю, возможно настроить перезапуск приложения после обработки определенного числа запросов (полезно для профилактики утечки памяти, открытых файловых дескрипторов и других ресурсов). Все эти параметры задаются в конфигурационном файле. За более подробным объяснением принципов работы Пускача и особенностей интерфейса FastCGI обратитесь к документации. Также с нашего сервера Вы можете загрузить исходные коды последней версии Пускача. Если Вы найдете ошибку в коде, либо Вам потребуется какая-либо дополнительная функциональность, пожалуйста, сообщите нам. Если Вы сами сможете реализовать какие-нибудь дополнительные возможности, мы будем только за. |