Tôi chỉ tự hỏi sự khác biệt và lợi thế là gì đối với các CGI khác nhau ở ngoài kia. Cái nào sẽ là tốt nhất cho các kịch bản python, và làm thế nào tôi sẽ nói cho kịch bản những gì để sử dụng?Sự khác biệt và sử dụng giữa WSGI, CGI, FastCGI và mod_python liên quan đến Python?
Trả lời
Câu trả lời một phần cho câu hỏi của bạn, bao gồm cả scgi.
- What's the difference between scgi and wsgi?
- Is there a speed difference between WSGI and FCGI?
- How Python web frameworks, WSGI and CGI fit together
CGI vs FCGI
Lazy và không viết nó trên của riêng tôi. Từ wikipedia: http://en.wikipedia.org/wiki/FastCGI
Thay vì tạo quy trình mới cho từng yêu cầu, FastCGI sử dụng các quy trình liên tục để xử lý các yêu cầu đó. Nhiều quy trình có thể được cấu hình, tăng tính ổn định và khả năng mở rộng. Mỗi quy trình FastCGI riêng lẻ có thể xử lý nhiều yêu cầu trong suốt thời gian tồn tại của nó, do đó tránh được chi phí của việc tạo và chấm dứt quá trình theo yêu cầu
Có phải cách họ giao tiếp giống nhau không? (FastCGI & CGI) –
Có một thư viện stdio FastCGI (marcos) cho phép bạn tạo một chương trình duy nhất có khả năng chạy cả dưới dạng CGI và ứng dụng FastCGI: http://www.fastcgi.com/devkit/doc/fastcgi-prog -guide/ap_guide.htm – xorcus
Câu hỏi về FastCGI: Cách xử lý các kết nối đồng thời với một quá trình khi PHP tự chặn ngôn ngữ? Nếu tôi có một cái gì đó "ngủ (100)". Nó sẽ chặn quá trình cho những người dùng khác? Cảm ơn – user345602
Ngoài ra còn có trình đọc nền tốt trên CGI, WSGI và các tùy chọn khác. HOWTO: http://docs.python.org/howto/webservers.html
Trong dự án như Django, bạn có thể sử dụng máy chủ WSGI (Web Server Gateway Interface) từ Flup module.
Một máy chủ WSGI kết thúc tốt đẹp một quá trình back-end sử dụng một hoặc nhiều giao thức:
- FastCGI (gọi một quá trình máy chủ)
- SCGI (Simple Common Gateway Interface - một FastCGI đơn giản)
- AJP (Apache JServ Protocol - một Java FastCGI)
- mod_python (chạy mã được nạp trước theo yêu cầu - sử dụng nhiều RAM)
- CGI (Common Gateway Interface , Bắt đầu một quá trình theo yêu cầu - chậm)
- FastCGI là một loại CGI mà là dài trực tiếp, mà sẽ luôn luôn được chạy.
- Với FastCGI, sẽ mất ít thời gian hơn.
- Do nhiều quy trình, FastCGI sẽ tốn nhiều bộ nhớ hơn CGI.
- 1. mod_wsgi, mod_python, hoặc chỉ cgi?
- 2. Có sự khác biệt về tốc độ giữa WSGI và FCGI không?
- 3. Sự khác biệt giữa các mụcSource và DataContext liên quan đến ListBox
- 4. Thực tiễn phổ biến liên quan đến sự khác biệt giữa UTC và GMT là gì?
- 5. Giao thức WebSocket và CGI/FastCGI/SCGI
- 6. Sự khác biệt giữa Smalltalk và python?
- 7. Matplotlib và WSGI/mod_python không hoạt động trên Apache
- 8. Sự khác nhau giữa scgi và wsgi là gì?
- 9. sự khác biệt giữa python 2.7.3 và python 3.3
- 10. Sự khác biệt giữa readAsBinaryString và readAsText sử dụng FileReader
- 11. Sự khác biệt giữa việc sử dụng @OneToMany và @ManyToMany
- 12. Sự khác biệt giữa $ * và $ @
- 13. Sự khác biệt giữa $ .post và $ .ajax?
- 14. Sự khác biệt giữa "**/* /" và "** /"?
- 15. Sự khác biệt giữa Enum.GetValues và Enum.GetNames
- 16. Sự khác biệt giữa Python urllib.urlretrieve() và wget
- 17. Sự khác biệt giữa SlidingPaneLayout và NavigationDrawer
- 18. Sự khác biệt giữa ADO và DAO
- 19. Sự khác biệt giữa $ (...) và `...`
- 20. Sự khác biệt giữa. và #
- 21. Sự khác biệt giữa ". +" Và ". +?"
- 22. Sự khác biệt giữa = và: =
- 23. Sự khác biệt giữa jsRender và jsViews
- 24. Sự khác biệt giữa việc sử dụng Trace và TraceSource
- 25. sự khác biệt giữa function() {}() và function() {}()
- 26. Sự khác biệt giữa bytebuffer.flip() và bytebuffer.rewind()
- 27. Sự khác biệt giữa fgets và fscanf?
- 28. sự khác biệt giữa System.exit() và killProcess()
- 29. Sự khác biệt giữa Kivy và PY4A
- 30. Sự khác biệt giữa Mealy và Moore
là mod_wsgi nhanh hơn? Máy chủ hiện tại của tôi sử dụng CGI, có lý do gì để chuyển đổi? – Parker
Có thể trùng lặp: http://stackoverflow.com/questions/219110/how-python-web-frameworks-wsgi-and-cgi-fit-together – Koroviev
Chúng tôi không thể cho bạn biết nếu mod_wsgi sẽ nhanh hơn trong môi trường của bạn.Bạn phải thực sự đo lường chúng trong môi trường của bạn với các ràng buộc của bạn và các ứng dụng của bạn và cấu hình của bạn. –