Я узнал, что мы можем запустить приложение торнадо от просто стреляющего что-то вроде python main.py
. Но все остальные говорят о развертывании торнадо с nginx. Каковы преимущества? Я знаю, что это немного глупо, но я действительно смущен.Зачем использовать nginx для развертывания торнадо вместо его встроенного сервера?
3
A
ответ
7
Смотрите заметки на Nginx в документации Торнадо:
http://tornado.readthedocs.org/en/stable/guide/running.html
Поскольку один процесс Торнадо может воспользоваться только из одного ядра процессора (Edit: См updated docs для развития на этом), использование Nginx для балансировки нескольких процессов Tornado для использования нескольких ядер Кроме того, Nginx, скорее всего, более эффективный статический обработчик файлов, чем Tornado.
Смежные вопросы
- 1. Зачем использовать лак вместо прокси-сервера Symfony?
- 2. Зачем использовать setInitParameter() вместо setAttribute() для ServletContext?
- 3. nginx + торнадо + супервизор
- 4. Зачем использовать nginx в качестве прокси-сервера websocket?
- 5. Зачем использовать '=' вместо ': ='?
- 6. Зачем использовать NGINX с Meteor?
- 7. Конфигурация Nginx для развертывания Meteor
- 8. Использовать сервер neo4j вместо встроенного режима
- 9. Зачем использовать Append() вместо +
- 10. Можно ли использовать gunicorn вместо торнадо httpserver?
- 11. Реализация СТРР/Nginx для развертывания
- 12. Пример конфигурации Nginx для sockJS-торнадо
- 13. Зачем использовать Redis вместо MongoDb для кэширования?
- 14. Зачем использовать Flex вместо JQuery?
- 15. Зачем использовать QAbstractTableModel вместо QAbstractListModel?
- 16. Зачем использовать {} для печати вместо знака плюс?
- 17. Зачем использовать select() вместо sleep()?
- 18. Зачем использовать dll вместо класса
- 19. Зачем использовать поля вместо свойств?
- 20. Зачем использовать NSArray вместо NSOrderedSet
- 21. Зачем использовать argparse вместо optparse?
- 22. Зачем использовать Assembly.LoadFile вместо Assembly.LoadFrom?
- 23. Зачем использовать JLE вместо JL?
- 24. Зачем использовать «/» вместо других символов для маршрутизации
- 25. Зачем использовать Double.doubleToLongBits() вместо кастинга?
- 26. лучше запустить торнадо на nginx, а не запускать его самостоятельно?
- 27. Зачем использовать MapFragment вместо SupportMapFragment?
- 28. Зачем использовать завод вместо «нового»?
- 29. Зачем использовать TagBuilder вместо StringBuilder?
- 30. Сервер встроенного сервера
Спасибо, Дэвис, но мы используем сервис баланса баланса амазонки, поэтому мы можем использовать торнадо, встроенный в сервер для развертывания производства, прямо? – Sabbir
Я не знаком с балансиром нагрузки Amazon. Но если вы выполняете те же цели, что и Nginx, вы запускаете процесс Tornado на ядро и избегаете использования Tornado для обслуживания статических файлов - тогда все в порядке. –
Балансировщик нагрузки просто распределяет нагрузку на другую машину, вычисляя, какой сервер ближе всего к запрашиваемому клиенту. Да, мы используем CDN для обслуживания статического контента. – Sabbir