Máy chủ có được tích hợp Flask an toàn để triển khai trong môi trường sản xuất không? Nếu không, tôi nên sử dụng những gì để triển khai Flask trong sản xuất?Máy chủ có được tích hợp Flask an toàn để sử dụng trong sản xuất không?
Trả lời
Về cơ bản, không. Máy chủ phát triển tích hợp không an toàn để triển khai trong môi trường sản xuất.
Máy xây dựng trong phát triển máy chủ chỉ dành cho điều đó. Để sử dụng trong sản xuất, bạn nên làm theo một trong các bước chi tiết here.
Chúng bao gồm các máy chủ khác nhau mà thực hiện các đặc điểm kỹ thuật WSGI, chẳng hạn như Apache/mod_wsgi hoặc một trong những độc wsgi máy chủ http://flask.pocoo.org/docs/deploying/wsgi-standalone/
Không. Máy chủ được nhóm là máy chủ phát triển. Nó không được thiết kế với môi trường sản xuất trong tâm trí.
- Nó sẽ không xử lý nhiều yêu cầu cùng một lúc theo mặc định.
- Nếu bạn thoát khỏi chế độ gỡ lỗi và lỗi xuất hiện, nó sẽ mở ra một trình bao cho phép mã tùy ý được thực thi trên máy chủ của bạn (xem
os.system('rm -rf /')
). - Máy chủ phát triển không mở rộng tốt.
Flask sử dụng máy chủ phát triển Werkzeug, và các tài liệu nói điều tương tự:
Các máy chủ phát triển không được thiết kế để được sử dụng trên hệ thống sản xuất. Nó được thiết kế đặc biệt cho mục đích phát triển và thực hiện kém dưới tải trọng cao. Đối với các thiết lập triển khai, hãy xem trang Application Deployment.
Cách tiếp cận được khuyến nghị là use a production WSGI server để chạy ứng dụng Flask của bạn. Có cả một phần dành riêng cho triển khai trong các tài liệu: Deployment Options
Nếu bạn đang phục vụ bất kỳ tài sản tĩnh như hình ảnh hoặc video, cần ở mức độ thấp bộ nhớ đệm, hoặc có nhu cầu đồng thời cao hơn, nó được đề nghị sử dụng một máy chủ web như nginx và xử lý tất cả các yêu cầu của bạn.
Ở dạng ASCII crappy:
+----------+
| Client 2 |
+----------+
|
V
+----------+ +-------+ +----------+
| Client 1 |----->| nginx |<-----| Client 3 |
+----------+ +-------+ +----------+
^
|
V
/--------------------\
| useful nginx stuff |
| like asset serving |
| and rate limiting |
\--------------------/
|
V
+-------------+
| WSGI server |
+-------------+
Để thực sự chạy quá trình máy chủ WSGI, bạn có thể sử dụng Supervisor. Nó sẽ tự động khởi động lại máy chủ nếu nó không thành công vì lý do nào đó, giữ nhật ký và chạy như một daemon để dịch vụ của bạn khởi động khi máy chủ khởi động.
Tôi sử dụng 'supervisor' +' gunicorn' + 'nginx'. Nó thực sự dễ dàng để thiết lập và duy trì. –
"Nó sẽ không xử lý nhiều yêu cầu cùng một lúc" - không đúng, xem các đối số được xử lý và chuỗi: http://werkzeug.pocoo.org/docs/0.11/serving/ – HaveAGuess
"nếu lỗi xuất hiện, nó sẽ mở ra lên một trình bao cho phép mã tùy ý được thực thi trên máy chủ của bạn "- không phải là chế độ debug = True? – HaveAGuess
Trong khi trọng lượng nhẹ và dễ sử dụng, máy chủ tích hợp của Flask không phù hợp cho sản xuất vì nó không hoạt động tốt và theo mặc định chỉ phục vụ một yêu cầu tại một thời điểm. http://flask.pocoo.org/docs/0.12/deploying/
- 1. Sử dụng máy chủ web tích hợp của Django trong môi trường sản xuất
- 2. NHibernate SchemaUpdate có an toàn trong mã sản xuất không?
- 3. Tôi có nên sử dụng 'Bảo mật tích hợp = True' trong môi trường sản xuất không?
- 4. Có an toàn và chấp nhận được khi cài đặt VS.NET trên máy chủ sản xuất của bạn không?
- 5. Có an toàn để sử dụng các chức năng chủ đề 'Không an toàn' không?
- 6. "Cách thích hợp để kéo git" nhánh sản xuất "vào máy chủ sản xuất
- 7. Virtualenv có được khuyến nghị cho máy chủ sản xuất django không?
- 8. Có ai đã sử dụng máy chủ web GWAN trong sản xuất không?
- 9. Dịch vụ Web nhẹ được sản xuất trong Java (không có máy chủ ứng dụng)
- 10. Gỡ lỗi an toàn cho các JVM sản xuất
- 11. Có ai sử dụng ICEpush trên máy chủ sản xuất dưới tải nặng không?
- 12. Chủ đề NSPersistentStoreCoordinator có an toàn không?
- 13. Triển khai máy chủ Node.js sản xuất
- 14. Sử dụng TDD để lái mã an toàn chủ đề
- 15. Profiler Java tốt nhất và an toàn nhất để sử dụng sản xuất?
- 16. Chủ đề libuv có an toàn không?
- 17. Chủ đề này có an toàn không?
- 18. Chạy máy chủ mỏng trong phương thức sản xuất không được tải tài sản của tôi
- 19. Chủ đề java.util.Hashtable có an toàn không?
- 20. Có an toàn khi sử dụng các tùy chọn nút v8 trong môi trường sản xuất không?
- 21. Sử dụng os.environ.setdefault có an toàn không?
- 22. Chủ đề an toàn có được putStrLn không?
- 23. SmtpException: Máy chủ không hỗ trợ kết nối an toàn
- 24. Chủ đề sử dụng an toàn của System.Configuration
- 25. Chủ đề NSFileManager có an toàn không?
- 26. Chủ đề SecureRandom có an toàn không?
- 27. Chủ đề MSMQ có an toàn không?
- 28. API WPF có thể được sử dụng an toàn trong dịch vụ WCF không?
- 29. Chủ đề DocumentBuilder.parse() có an toàn không?
- 30. GUIDs được tạo trên Windows 2003 có an toàn để sử dụng làm ID phiên không?
Có thể nhận bản cập nhật 2014 cho câu trả lời này không?"Về cơ bản không" là mơ hồ như + ensnare hỏi hai câu hỏi. –
câu trả lời được cập nhật để xóa sự mơ hồ. phần còn lại của câu trả lời vẫn có vẻ hoàn toàn hợp lệ. liên kết vẫn trỏ đến tài liệu bình mới nhất. –