Difference between revisions of "Общая архитектура системы"

From EjudgeWiki
Line 6: Line 6:
 
**<tt>[[ej-users]]</tt>
 
**<tt>[[ej-users]]</tt>
 
**<tt>[[ej-super-server]]</tt>
 
**<tt>[[ej-super-server]]</tt>
**<tt>[[ej-compile]]</tt> ([[compile]])
+
**<tt>[[ej-compile]]</tt>
**<tt>[[ej-jobs]]</tt> ([[job-server]])
+
**<tt>[[ej-jobs]]</tt>
 
**<tt>[[ej-contests]]</tt>
 
**<tt>[[ej-contests]]</tt>
 
**<tt>[[ej-super-run]]</tt>
 
**<tt>[[ej-super-run]]</tt>

Revision as of 12:11, 29 March 2012

Навигация: Главная страница/Система ejudge/Использование/Общая архитектура системы

Система ejudge состоит из нескольких компонент, отвечающих за разные аспекты работы:

  • Управляющие компоненты, отвечающие за доступ к основной базе данных пользователей, мониторинг активных турниров, выполнение низкоприоритетных вспомогательных задач и компиляцию решений участников. Управляющие компоненты системы работают в режиме демона все время работы системы, начиная от создания турнира, регистрации пользователей, проведения турнира и все время, когда предоставляется доступ к результатам турниров. Управляющие компоненты работают в одном экземпляре на все существующие в данный момент в системе турниры. Запуск системы ejudge заключается в запуске управляющих компонент. К этой группе относятся следующие программы:
  • Компоненты, обслуживающие турниры и выполняющие запросы пользователей и администраторов турнира и тестирование решений. Компоненты обслуживания турнира выполняют запросы пользователей на тестирование решений и другие операции с турниром. К этой группе относятся следующие программы:
  • CGI-программы, непосредственно обрабатывающие запросы пользователей и администраторов системы и предоставляющие интерфейс к программам первой и второй групп.CGI-программы запускаются веб-сервером при поступлении запроса от клиента. Как правило, CGI-программы выполняют предварительный анализ запроса и передают запрос на генерацию HTML-страниц соответствующим программам серверной части ej-users, ej-super-server, ej-contests. К группе CGI-программ относятся следующие программы: