Używam serwera WWW z kolbą, działa dobrze podczas testów, ale teraz zawiesza się co najmniej raz dziennie. Wszystko, co muszę zrobić, to ponownie uruchomić i będzie działać ponownie. Czy istnieje dobry sposób na ich monitorowanie i może powinienem po prostu zabić/zrestartować go za każdym razem, gdy zawiedzie. Czy ludzie rzeczywiście zabijają okresowo swój serwer sieciowy, aby tego uniknąć?Serwer sieci web Python Flask przestaje odpowiadać
Odpowiedz
Jeśli używasz domyślnego serwera internetowego Flask: Nie rób tego. Jest przeznaczony TYLKO do programowania.
Jako dodatkowy zasób warto czytać te dwa posty na blogach na temat wdrażania aplikacji kolby:
http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-xvii-deployment-on-linux-even-on-the-raspberry-pi http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-xviii-deployment-on-the-heroku-cloud
A do monitorowania procesów w serwer, można dać Watchy spróbować:
Podczas gdy domyślny serwer WWW może nie być najlepszy do produkcji, prawdopodobnie nie jest podstawową przyczyną awarie. Używam go w środowisku produkcyjnym w wewnętrznej sieci i jest bardzo stabilny. Przed obwinianiem serwera sprawdź, czy twój kod może obsłużyć żądania, które mogą się ze sobą kolidować. W moim przypadku miałem dużo problemów ze stabilnością, zanim wprowadziłem blokowanie w tabelach baz danych, aby niektóre żądania były blokowane, dopóki wcześniejsze żądania nie zostaną wykonane z aktualizacjami. Flask nie może się upewnić, że twój kod jest bezpieczny dla wątków. A zmiana serwera sieciowego nie pomoże, jeśli tak nie jest.
W moim przypadku muszę zmienić worker_class z "sync" na "gevent", ponieważ wykonuję niektóre asynchroniczne zadania. Wtedy już nie będzie wisieć.
- 1. Serwer sieci Web RabbitMQ Management
- 2. Redis okresowo przestaje odpowiadać przy dużym obciążeniu.
- 3. Na urządzeniu Serwer sieci web iOS
- 4. Serwer sieci Web w chromowanej aplikacji pakowanej
- 5. Dlaczego prosty serwer Thin przestaje odpowiadać przy 16500 zapytaniach podczas testów porównawczych?
- 6. Usługa NetTcpActivator (adapter odbiornika Net.Tcp) przestaje odpowiadać okazjonalnie
- 7. Powikłania w sieci Web
- 8. Serwer sieci Web za serwerem proxy odmiany IIS 7
- 9. Uruchamiaj skrypt Pythona na starcie węzła sieci Web (nw.js)
- 10. Pakiet sieci Web pobiera nieprawidłową nazwę witryny sieci Web IIS
- 11. Flask register_blueprint error (Python)
- 12. Serwer Jetty 9 Serwer sieci Web Maksymalna wielkość wiadomości w sesji
- 13. Przekierowanie komunikacji internetowej z klienta na serwer na inny serwer sieci Web
- 14. Usługa sieci Web: PHP lub Ruby on Rails lub Python?
- 15. Python Flask uzyskać dane json wyświetlić
- 16. RAD 7.5 Pytanie do usługi sieci Web
- 17. Usługa sieci Web, aby uzyskać współrzędne GPS
- 18. Wdrażanie aplikacji sieci web ASP.NET
- 19. Wersja aplikacji sieci web ASP.NET
- 20. Samodzielny klient sieci web java
- 21. Dokumentowanie usług sieci Web ServiceStack
- 22. Urządzenie przestaje otrzymywać komunikaty GCM do momentu przełączenia sieci
- 23. Połączyć wiele aplikacji sieci web node.js
- 24. ASP.NET Web Api w sieci tworzy
- 25. Sieci web PHP z nginx przez SSL
- 26. RESTful usługa WCF, która może odpowiadać w obu JSON (P) i XML i nadal służyć jako usługa sieci Web SOAP?
- 27. . Usługa zdalna usługi .NET pozornie ulega awarii i przestaje odpowiadać na klientów.
- 28. Python - Flask - otwórz stronę w domyślnej przeglądarce
- 29. Wyświetlanie witryny Django i witryny sieci Web w sieci LAN
- 30. Debugowanie pracowników sieci Web w przeglądarce Safari Web Inspector
Czy używasz serwera sieciowego typu "flask" we wdrożeniu? –
Aby rozwinąć pytanie Bartosza: Domyślny serwer internetowy wbudowany w kolbę jest przeznaczony tylko do programowania - nie nadaje się do produkcji. Aby wdrożyć aplikacje do kolb, potrzebujesz lepszego serwera WSGI. Zobacz dokumentację: http://flask.pocoo.org/docs/deploying/ – Daniel
jest to moja aplikacja internetowa do kolb. Zasadniczo zaczynam i pozostawiam go uruchomionym. Nie używam niczego innego (ngix, apache). –