Варианты развертывания проектов на M3

898
-1

Published on

Борисов К. Варианты развертывания проектов на M3

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
898
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Варианты развертывания проектов на M3

  1. 1. Варианты развертывания проектов на платформе М3 +Докладчик: Решения для электронного правительства иКирилл электронизация государственных услугБорисов Больше, чем технологии!
  2. 2. Взгляд со стороны пользователя Запрос Система Клиент Ответ С точки зрения клиента, система представляет собой «черный ящик».3
  3. 3. WSGI? Что это? WSGI (Web Server Gateway Interface) WSGI middleware middleware middleware Web-сервер ... Приложение Универсальный интерфейс между web-приложениями на Python и Web-сервером.3
  4. 4. Взгляд со стороны администратора Frontend Backend Запрос Ответ Клиент Web-сервер Сервер Сервер БД приложений С точки зрения системного администратора, бэкенд представляет собой сложный комплекс взаимодействующих между собой систем.3
  5. 5. Варианты развертывания 1 Apache + mod_wsgi 2 nginx + (gunicorn / uWSGI) 3 supervisor + nginx + (gunicorn | uWSGI)3
  6. 6. Классический вариант: Apache + mod_wsgi Apache mod_wsgi Приложение 1 Web-браузер Apache mod_wsgi Приложение 2 Apache mod_wsgi Приложение 3 Каждое приложение выполняется в контексте отдельного экземпляра Apache.3
  7. 7. Классический вариант: Apache + mod_wsgi За Против Обширная документация Прожорлив к ресурсам Работает «из коробки» Сложность создания нестандартных конфигураций Поддержка Windows Плохо переносит DoS атаки3
  8. 8. Перспективный вариант: nginx + uWSGI worker worker Приложение 1 worker Обратный Контроллирующий Web-браузер прокси процесс worker worker Приложение 2 worker Использование схемы «master-worker» позволяет гибко изменять конфигурацию работающей системы и распределять нагрузку без видимых для клиента изменений.3
  9. 9. Прогрессивный: вариант: nginx + WSGI-сервер За Против Гибкость конфигурации и Очень сложен в настройке расширяемость Избыточен для большинства Встроенный load balancer сценариев Тесная интеграция: nginx+uWSGI, Сложно заставить работать nginx+memcached под Windows3
  10. 10. Дополнительные аспекты развертывания 1 Контроль за процессами: supervisor, Upstart 2 Автоматическое обновление систем: Fabric, Puppet Автоматическая установка необходимых библиотек под 3 Linux: apt-get, pip3
  11. 11. Анонс мастер-класса 1 Развертывание системы под Apache + mod_wsgi 2 Использование gunicorn 3 Автоматическая балансировка нагрузки через nginx 4 Все вместе: supervisor + nginx + gunicorn3
  12. 12. И в завершение… Вопросы?3
  13. 13. Спасибо за внимание! +
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×