问题标签 [uwsgi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
nginx - 如何使用 UWSGI_SCRIPT 将 pylons 应用程序动态添加到 nginx 上的 uwsgi 进程?
我已经成功地在 nginx + uwsgi 上部署了一个 pylons 应用程序,使用:
但是我正在使用 nginx 来虚拟主机 3 个站点。
根据本教程和 unbit 上 uwsgi 主站点的 uwsgi/wiki/DynamicApps 页面,我可以将应用程序动态添加到 uwsgi,而无需为 3 个独立端口上的 3 个主进程创建 3 个独立的 uwsgi init.d 脚本。
我的 nginx 虚拟主机配置的设置就像在教程中一样,但是我遇到了 UWSGI_SCRIPT 值的问题。我将它设置为 app.wsgi(位于 /var/www/sites/helloworld/app.wsgi)。脚本代码为:
但是我找不到有关此脚本的任何直接信息。它应该被命名为 app_wsgi.py 还是完全不同的代码?它应该位于哪里?当我访问该站点时,我得到:“uWSGI 错误 - 未找到 wsgi 应用程序”,然后我在我的 uwsgi.log 中看到:
python - Django 和 Python + uWSGI
使用指令我尝试连接Python + uWSGI。
我在文件夹/home/sanya/django/pasteurl中创建了默认项目。但是,已经在我得到的浏览器中打开它
日志包含以下内容:
文件/home/sanya/django/pasteurl/django.wsgi
我意识到,这个应用程序字典有问题
django - Nginx 连接重置,uWsgi 的响应丢失
我有一个通过 Nginx 和 uWsgi 托管的 django 应用程序。在某个非常简单的请求中,我得到了 GET 和 POST 的不同行为,这不应该是这种情况。
uWsgi 守护进程日志:
Nginx 访问日志:
Nginx 错误日志:
本质上,如果我使用 POST,Nginx 会在某处丢失响应,如果我使用 GET,则不会。
有人知道吗?
python - uWSGI + Django + Virtualenv 无法获取 _functools(导入错误)
好的,所以我在没有virtualenv的情况下尝试了这个:
几乎无论如何,我明白了:
如果我将 --home 更改为 /usr/local/lib/python/2.6 我在 app_wsgi.py 导入 os 时会失败。这是,下面,以防万一:
本质上我在问,我怎样才能让 uWSGI 识别 functools 或走上正确的路径(路径在上面的输出中)。我将不胜感激你们可以提供的任何帮助!
PS Ubuntu 10.04 - uWSGI 0.9.6.5 - NGINX 0.8.53 - 虚拟环境 Python 2.6.5 - “常规(或系统)” Python 2.6.6 - Django 1.2.3
更新:
如果我像这样省略“--module”,我可以让 uwsgi 开始接受请求:
但现在我收到一个未找到应用程序的错误:
“未找到 uWSGI 错误 wsgi 应用程序”
我离得更近了,但我仍然会感谢建议,因为找不到该应用程序,因为我无法包含加载它所需的模块!
mod-wsgi - 全局 Python 对象的唯一性在子解释器中无效?
id()
我对 Python 子解释器初始化(来自 Python/C API)和 Python函数的内部工作有疑问。更准确地说,关于在 WSGI Python 容器中处理全局模块对象(如 uWSGI 与 nginx 和 Apache 上的 mod_wsgi 一起使用)。
以下代码在上述两种环境中都按预期(隔离)工作,但我无法向自己解释为什么该id()
函数总是为每个变量返回相同的值,而不管它在哪个进程/子解释器中执行。
我已经在 uWSGI 中用一个主进程和 2 个工作进程测试了这段代码;并在 mod_wsgi 中使用具有两个进程和每个进程一个线程的守护程序模式。典型的输出是:
pid = 15278
id(A) = 139748093678128
id(a) = 139748093962360
str(a) = 一
在第一次加载时,然后:
pid = 15282
id(A) = 139748093678128
id(a) = 139748093962360
str(a) = 一
在第二个,然后
PID = 15278 | pid = 15282
id(A) = 139748093678128
id(a) = 139748093962360
str(a) = 两个
每隔一段时间。如您所见,id()
类和类实例的(内存位置)在两个进程中保持相同(上面的第一次/第二次加载),而同时类实例存在于单独的上下文中(否则第二个请求将显示“二”而不是“一”)!
我怀疑 Python 文档可能暗示了答案:
id(object)
:返回对象的“身份”。这是一个整数(或长整数),保证该对象在其生命周期内是唯一且恒定的。具有不重叠生命周期的两个对象可能具有相同的
id()
值。
但如果这确实是原因,我会被下一个声称该id()
值是对象地址的声明所困扰!
虽然我很欣赏这很可能只是 Python/C API 的“聪明”功能,可以解决(或更确切地说是修复)在 3rd 方扩展模块中缓存对象引用(指针)的问题,但我仍然发现这种行为不一致与...嗯,常识。有人可以解释一下吗?
我还注意到 mod_wsgi 在每个进程中导入模块(即两次),而 uWSGI 只为两个进程导入模块一次。由于 uWSGI 主进程进行导入,我想它用该上下文的副本为子进程播种。两个工人之后独立工作(深拷贝?),同时使用相同的对象地址,看似。(此外,工作人员在重新加载时会重新初始化为原始上下文。)
我为这么长的帖子道歉,但我想提供足够的细节。谢谢!
xml - uWSGI xml/ini 配置选项
uWSGI 的 xml/ini 配置中的所有已处理标签是否有任何描述?文档说所有命令行选项都可以放在 xml/ini 中,但还有更多,特别是以下配置已正确处理:
在这个片段中有app
标签,它包含嵌套script
标签。但它们都不是 uwsgi 的命令行参数。
是否有此类标签的完整列表?这些选项是否适用于 ini 配置?
python - 在 UWSGI 下从 Django 登录
我正在通过 uwsgi 服务器运行我的 django 应用程序,并且正在启动 32 个进程 - 我的 init 脚本中的参数是:
版本是 Python 2.6.5、Django 1.2.1、uWSGI 0.9.5.1
我想要一个日志文件,所以我使用基于多处理的日志处理程序,如问题 641420中所述。
多日志处理程序在我拥有的一个简单的测试应用程序中运行良好,并且当我使用 werkzeug 运行 manage.py runserver_plus 时也可以正常工作,但是当我使用 django 和 uwsgi 运行时没有任何记录(尽管我也没有从 uwsgi 进程中得到任何错误或异常) .
我的 wsgi 文件在下面,如果有人能找出我的配置问题或对正在发生的事情的解释,我将不胜感激:
django - 重新启动以查看更改?切诺基 + uWSGI + Django/Pinax + Virtualenv
我在 Cherokee + uWSGI 在我的 django 应用程序中对 .py 文件进行代码更改时遇到了一些麻烦。即使使用
find -name "*.pyc" -delete
...似乎没有任何效果。
在 django runserver 下运行相同的代码库时,在刷新时会立即注意到更改
如何强制重启并可靠地查看 Cherokee + uWSGI + Django 下的变化?
python - 尽管客户端断开连接但处理请求的 WSGI 服务器?- Python
我需要找到一个稳定的 wsgi 服务器,它不会在客户端断开连接时停止处理请求。
我不确定 uWSGI 或 gunicorn 是否符合这个标准。
忘了添加这个:
我也试图在请求得到处理之前返回响应。
有任何想法吗?
django-haystack - ImportError:无法导入名称索引
第一次运行 uwsgi 时出现此错误: ImportError: cannot import name index
当我取消 uwsgi 并再次运行它时,它可以工作,但网站速度变慢并且随机出现 502 错误。使用 django 开发服务器或使用 HAYSTACK_ENABLE_REGISTRATIONS = False 它可以正常工作。
知道有什么问题吗?
完整追溯: