Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Веб-разработка
и инструментарий
в Python
Тесты
• long-term lasting эффект
• здоровый сон
• бесконечный рефакторинг
• быстрый и качественный процесс
разработки
Тесты
• Unit тесты
• Mock тесты/патчи
• Функциональные тесты
– Selenuim Python Web Driver
• pytest
– plugins (i.e. pytest-...
Не убедил?
• The Mythical Man-Month (~25% testing)
• Peopleware
CVS
• git
• mercurial (written in python)
Стандартная архитектура
Плюсы
• просто и быстро
Минусы
• общие ресурсы
• сложно масштабировать
Раздельная архитектура
Плюсы
• быстродействие
• масштабируемость
• безопасность (PCI-DSS)
Минусы
• сложность в настройке
• дороже
• задержка сети
Горизонтальная масштабируемость
12 Factor App
http://12factor.net/
• манифест создания веб-приложений
– единая кодовая база
– ортогональность приложений
–...
Окружение
• Virtualenv + pip (включен в py3)
• Docker
• Vagrant + VirtualBox
• Fabric
Веб-фреймворки
• Django (батарейки в комплекте)
• Pyramid
• Flask
• Bottle
• Bobo
• Falcon
• Tornado, Twisted
PostgreSQL vs. MySQL
• JSON(B)
• Async, more data types, table inheritance
• Scalability
• Full text search
NoSQL
• MongoDB
• Redis
• Memcached
Очереди задач
• Celery
• django-tasks
• py-rq
WSGI серверы
• Gunicorn (pure Python)
• uWSGI
• Apache + mod_python
• Apache + mod_wsgi
Процесс менеджер
Supervisord
pure Python implementation
Мониторинг
• Munin + plugins
• Sentry + raven
Внешние веб-сервисы
ПАДАЕТ ВСЁ!!1
• Toxy
• Mozilla Vaurien
IDE
• JetBrains PyCharm
– CVS tools
– Vagrant
– Deployment
– Debugger
– Virtualenv
• SublimeText + plugins
• Emacs/Vim
Вопросы?
Книги
• Two Scoops of Django 1.8
• Learning Python
• Fluent Python (July 2015)
• Code Complete
• Pragmatic Programmer
• Bu...
Upcoming SlideShare
Loading in …5
×

Python tools for web development (Python meetup Almaty #ALAPY)

667 views

Published on

Prepared by Adil Khashtamov, CTO of Aviata.kz

Published in: Internet
  • Be the first to comment

  • Be the first to like this

Python tools for web development (Python meetup Almaty #ALAPY)

  1. 1. Веб-разработка и инструментарий в Python
  2. 2. Тесты • long-term lasting эффект • здоровый сон • бесконечный рефакторинг • быстрый и качественный процесс разработки
  3. 3. Тесты • Unit тесты • Mock тесты/патчи • Функциональные тесты – Selenuim Python Web Driver • pytest – plugins (i.e. pytest-cov)
  4. 4. Не убедил? • The Mythical Man-Month (~25% testing) • Peopleware
  5. 5. CVS • git • mercurial (written in python)
  6. 6. Стандартная архитектура
  7. 7. Плюсы • просто и быстро Минусы • общие ресурсы • сложно масштабировать
  8. 8. Раздельная архитектура
  9. 9. Плюсы • быстродействие • масштабируемость • безопасность (PCI-DSS) Минусы • сложность в настройке • дороже • задержка сети
  10. 10. Горизонтальная масштабируемость
  11. 11. 12 Factor App http://12factor.net/ • манифест создания веб-приложений – единая кодовая база – ортогональность приложений – безопасность (ключи, пароли, доступы) – единая среда разработки и развертывания
  12. 12. Окружение • Virtualenv + pip (включен в py3) • Docker • Vagrant + VirtualBox • Fabric
  13. 13. Веб-фреймворки • Django (батарейки в комплекте) • Pyramid • Flask • Bottle • Bobo • Falcon • Tornado, Twisted
  14. 14. PostgreSQL vs. MySQL • JSON(B) • Async, more data types, table inheritance • Scalability • Full text search
  15. 15. NoSQL • MongoDB • Redis • Memcached
  16. 16. Очереди задач • Celery • django-tasks • py-rq
  17. 17. WSGI серверы • Gunicorn (pure Python) • uWSGI • Apache + mod_python • Apache + mod_wsgi
  18. 18. Процесс менеджер Supervisord pure Python implementation
  19. 19. Мониторинг • Munin + plugins • Sentry + raven
  20. 20. Внешние веб-сервисы ПАДАЕТ ВСЁ!!1 • Toxy • Mozilla Vaurien
  21. 21. IDE • JetBrains PyCharm – CVS tools – Vagrant – Deployment – Debugger – Virtualenv • SublimeText + plugins • Emacs/Vim
  22. 22. Вопросы?
  23. 23. Книги • Two Scoops of Django 1.8 • Learning Python • Fluent Python (July 2015) • Code Complete • Pragmatic Programmer • Building Microservices

×