问题标签 [waitress]
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.
python - 与拥抱和女服务员一起记录
我想将日志记录添加到我的 Python拥抱REST 应用程序中。hug
通过命令(通过)为应用程序提供服务时,我找不到任何hug -f app.py
方法,因此我尝试将 hug 与waitress结合起来。
我在文件中的最小应用程序结构app.py
如下所示:
我用一个女服务员脚本来服务这个run.py
:
当我 python run.py
在控制台中执行时,应用程序很好地启动并func
返回结果,但是来自 func ("debug func")和来自run.py
("logger set to DEBUG") 的调试消息我在控制台中看不到。
出了什么问题,我该如何解决?(如果这样更容易的话,我很乐意使用另一个(支持 Windows 的)WSGI 服务器。)
python - python 女服务员作为 Windows 服务
我在 Windows 上使用 waitress 和 falcon 编写了一个 API 服务器。它工作得很好,但现在我需要将它作为服务运行,以便它可以监控。最好的方法是什么?我看过 pywin32 和cherrypy 自己的实现。我很难通过 python 阻止女服务员。我知道使用 cmd 时使用了 ctrl-break,但不确定使用 python 时使用什么。
我看不到女服务员有像cherrypy这样的停止功能。
任何帮助都会很棒。即使它在pywin32之外。只需要一些关于如何让服务员在 Windows 上作为服务运行的详细信息,因为有很多方法可以做到这一点,我不确定哪个是推荐的。
谢谢,安东尼
pyramid - 金字塔 pserve 在与 / 不同的根路径中
当 pserve 默认启动时,它会在http://0.0.0.0:6543中运行金字塔应用程序,但是如何将其更改为http://0.0.0.0:6543 /myapp
在设置中我可以更改端口,但我没有在其他地方找到更改根路径的位置
python - Openshift 3 Python 中的 IP 绑定
我正在尝试从 Openshift 2 迁移到 3,但我被困了几行。
在从Openshift Pyramidstarter 模板复制的带有 Waitress 服务器的 Python3 Pyramid 中运行。问题出在os.environ
.
这给了我以下错误
我已经尝试了其他一些选项。os.environ
键如下:['KUBERNETES_PORT_53_UDP_PORT', 'PIP_NO_CACHE_DIR', 'KUBERNETES_PORT_53_TCP_PORT', 'STI_SCRIPTS_PATH', 'PYTHONIOENCODING', 'X_SCLS', 'KUBERNETES_PORT_443_TCP_PROTO', 'HOME_SERVICE_PORT', 'HOME_SERVICE_HOST', 'KUBERNETES_PORT_53_TCP_ADDR', 'LANG', 'MANPATH', 'KUBERNETES_PORT_53_UDP', 'KUBERNETES_PORT_443_TCP', 'HOME_SERVICE_PORT_8080_TCP', 'PWD', 'KUBERNETES_PORT', 'KUBERNETES_SERVICE_PORT_HTTPS', 'VIRTUAL_ENV', 'PYTHON_VERSION', 'KUBERNETES_PORT_443_TCP_ADDR', 'HOME_PORT_8080_TCP_PORT', 'HOME_PORT', 'HOME_PORT_8080_TCP_ADDR', 'HOME_PORT_8080_TCP_PROTO', 'OPENSHIFT_BUILD_SOURCE', 'KUBERNETES_PORT_53_TCP_PROTO', 'KUBERNETES_PORT_53_UDP_PROTO', 'LD_PRELOAD', 'DESCRIPTION', 'LIBRARY_PATH', 'OPENSHIFT_BUILD_NAMESPACE', 'KUBERNETES_PORT_53_TCP', 'container', 'PATH', 'KUBERNETES_SERVICE_HOST', 'KUBERNETES_SERVICE_PORT_DNS_TCP', 'KUBERNETES_PORT_53_UDP_ADDR', 'KUBERNETES_SERVICE_PORT', 'PYTHONUNBUFFERED', 'KUBERNETES_PORT_443_TCP_PORT', 'OPENSHIFT_BUILD_COMMIT', 'NSS_WRAPPER_PASSWD', 'HOME_PORT_8080_TCP', 'KUBERNETES_SERVICE_PORT_DNS', 'SUMMARY', 'STI_SCRIPTS_URL', 'NSS_WRAPPER_GROUP', 'PKG_CONFIG_PATH', 'SHLVL', 'OPENSHIFT_BUILD_REFERENCE', 'HOME', 'HOSTNAME', 'LD_LIBRARY_PATH', 'LC_ALL', 'XDG_DATA_DIRS', 'OPENSHIFT_BUILD_NAME']
。
例外:我拼命尝试绑定到 localhost (127.0.0.1),但我的权限被拒绝。
python - 金字塔独角兽和女服务员
我试图了解 Pyramid 关于[main:server]
配置和 gunicorn 的行为。
如果我使用pserve
,它将使用 , 的配置[main:server]
,用于服务员和 gunicorn。例如:
所以现在,$ pserve development.ini
将与女服务员一起启动项目,这是意料之中的。但是,如果我使用该命令$ gunicorn
(在 ini 文件中使用 gunicorn 或 waitress),它也可以正常工作,这不是我所期望的。
我的问题是:
如果我运行命令,为什么此配置有效
$ gunicorn --paste development.ini
?发生了什么?女服务员在工作吗?(我会说这不是根据我电脑中的流程)
python - 女服务员因连接过多而导致 504
我们有一个每秒收到 20-30 个请求的应用程序。尽管我们调整了性能变量,但女服务员似乎在负载下屈曲。它不会崩溃也不会给出任何错误。相反,它似乎向 Nginx 发送(我们假设)一个 ERRCONRESET,Nginx 正在向它发送请求。这个假设来自服务员文档,该文档指出当积压超过其限制时,它可能会向请求方发送 ERRCONRESET。此外,Nginx 在女服务员负载时返回 504 给我们。python 应用程序本身似乎继续运行良好。
我们还尝试增加线程数(50 个线程)和连接限制(1000 个)。我们还降低了 channel_timeout 和 cleanup_interval(分别为 10 秒和 15 秒)。这仍然表明负载下的性能没有改善。最后,我们甚至尝试将积压订单增加到 2048 个。这些都没有产生任何重大影响。
在某种程度上,我什至想知道被禁止的新限制是否得到遵守,因为运行 netcat 显示长时间运行的连接在 60 秒内没有被终止。我们的印象是女服务员应该能够处理这个负载,但事实并非如此。需要注意的是,我们已将其扩展到 LB 后面的 6 个并发实例以接收请求,但仍然出现这些错误。
任何反馈或性能提示将不胜感激。我们在 kubernetes 上运行的非常强大的 AWS 实例上运行这些。他们占用的 CPU 和 RAM 资源可以忽略不计。当它确实工作时它的毫秒返回时间,所以我看不到代码中可能有任何影响的瓶颈,只有一些事实是连接和积压已经不堪重负。
请参阅下面的服务员配置以启动应用程序。
python - 使用 Windows 在 Heroku 上部署 python 烧瓶 Web 应用程序
我正在尝试将我制作的烧瓶应用程序成功部署到 Heroku。该应用程序已生成,但当我将代码推送到 Heroku 存储库时出现错误。
我的烧瓶应用程序位于名为 server.py 的模块中,变量名为 app。起初我尝试使用 gunicorn 并编写 web: gunicorn server:app 和 deplying 但没有 web dynos 启动,我收到一个错误,指出它是 Procfile 文件。关于它的红色并看到 Gunicorn 并没有真正在 Windows 上工作,所以我尝试安装 Waitress 并部署但没有成功。这次我的简介被写成所有这些(尝试了几次):
网络:女服务员服务--listen=*:8000 server.wsgi:application
web: waitress-serve --listen=*:8000 app.wsgi:application 等等。
要添加网络测功机,我应该对其进行缩放,因为 heroku ps: 表明没有测功机。
当我尝试运行 heroku ps:scale web=1 我得到:
缩放测功机...!▸ 找不到该进程类型。
我究竟做错了什么?
python - 女服务员的“模块对象不可调用”
我正在尝试在 Heroku 上部署我的应用程序。我必须使用 Windows,而 gunicorn 将无法工作。我试过女服务员,每当我尝试加载任何页面时,它都会给我一个“模块不可调用”错误。
注意:到目前为止,我还没有在网络上部署它,heroku local
在创建一个可公开访问的之前尝试过。它在localhost
使用 PyCharm 时有效。
文件组织
__init __.py
:
Procfile
:
追溯:
知道如何解决这个问题吗?
python - 女服务员 Nginx 无法提供具有相对路径的静态文件
我使用 waitress 作为 WSGI 来为我的 Django 应用程序提供服务,并且我使用 nginx 作为反向代理。当我给出静态文件的绝对路径时,它工作正常,但如果我尝试给出相对路径,它就不起作用。
location /static/ 中的注释部分是我想让它工作的部分。我还确保文件位置正确。我在访问日志和错误日志中给出了相对路径,它们工作正常。这是我在这里想念的吗?
python - 在 Windows 上与女服务员一起服务 Flask 应用程序
我可以使用以下代码运行网络服务器
问题是我只能从它运行的机器上访问它,如果我尝试使用 ipv4 ip 访问它,它就不起作用。我错过了一步吗?