gpt4 book ai didi

python - 有人可以给我一个关于 WSGI 幕后细节与 Python 的其他 Web 界面方法的高级技术概述吗?

转载 作者:太空狗 更新时间:2023-10-29 20:59:45 24 4
gpt4 key购买 nike

首先:

  1. 我了解什么是 WSGI 以及如何使用它
  2. 我了解什么是“其他”方法(Apache mod-python、fcgi 等),以及如何使用它们
  3. 我了解他们的实际差异

我不明白的是,与 UWSGI 之类的方法相比,各种“其他”方法在幕后是如何工作的。您的服务器(Nginx 等)是否将请求路由到您的 WSGI 应用程序,并且 UWSGI 是否为路由到它的每个请求创建一个新的 Python 解释器? WSGI 与其他更传统的/猴子修补方法有多大不同(除了 WSGI 提供的不同的、更简单的 Python 接口(interface))?我错过了什么灯泡时刻?

最佳答案

除了 CGI 之外,几乎从不为每个请求创建一个新的 Python 解释器。阅读:

http://blog.dscpl.com.au/2009/03/python-interpreter-is-not-created-for.html

这是针对 mod_python 编写的,但也适用于 mod_wsgi 和任何使用持久进程的 WSGI 托管机制。

另请阅读:

http://www.python.org/dev/peps/pep-0333/#environ-variables

您会在此处找到描述的“wsgi.run_once”变量。这用于向 WSGI 应用程序指示何时使用托管机制,该机制将看到进程仅处理一个请求然后退出,即 CGI。因此,编写一个测试 hello world 应用程序,它转储 WSGI 环境并查看它为您正在使用的内容设置了什么。

还要注意“wsgi.multiprocess”和“wsgi.multithread”变量。它们会告诉您是否正在使用多进程服务器,以便您的应用程序有多个实例同时处理请求。 'wsgi.multithread' 变量告诉您​​进程本身是否在同一进程的并发线程中处理多个请求。

有关 Apache 嵌入式系统的多进程和多线程模型的更多信息,例如 mod_python 和 mod_wsgi,以及 mod_wsgi 守护进程模式,请参阅:

http://code.google.com/p/modwsgi/wiki/ProcessesAndThreading

关于python - 有人可以给我一个关于 WSGI 幕后细节与 Python 的其他 Web 界面方法的高级技术概述吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2739892/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com