我用uWSGI运行一个烧瓶服务器。进程由System d启动。
现在我需要一些以“while(True)”运行的子流程,它们必须始终收集一些信息。
我现在开始一个具有多重处理的子过程。
下面是我的一些代码:
from multiprocessing import Process, Value
def start_flask_server():
daemon_data = Value('d', 0.0)
p = Process(target=worker, args=(daemon_data, 1))
p.daemon=True
p.start()
然后我用systemd重新启动/停止uWSGI,进程阻塞,当然它不受SIG影响。
我的第一个想法是实现一个单音句柄:
for i in [x for x in dir(signal) if x.startswith("SIG")]:
try:
signum = getattr(signal,i)
signal.signal(signum, signal_term_handler)
app.logger.debug("Added Handler SIG: %s"%i)
except Exception as e:
app.logger.error(e)
app.logger.error("Skipping %s"%i)
但不幸的是,他们没有点火。。。
如果服务器即将关闭,是否会触发事件,或者我是否可以在应用程序中启动一个uWSGI“worker”来执行此任务?
我有两个反建议:
>
为您的员工创建单独的systemd流程。如果您的工作进程不需要与web进程通信,那么这是可行的,当然,它们可以通过其他协调进程(例如:数据库、Redis、芹菜代理)进行通信。
使用uwsgi骡子https://uwsgi-docs.readthedocs.io/en/latest/Mules.html
房间类别 长话短说,这一点是为了添加房间,并能够导航它们,捡起物品,然后放下它们。在我尝试运行程序时,我注意到我不能有多个北/南/东/西键。我怎样才能避开这件事,这样我才能把它做好?
问题内容: 是否有Linux库可以使我知道哪些进程拥有哪些IP套接字?我想我正在寻找的程序化等效项。最终,我想将透视的数据包与进程关联起来。 更新: 有人建议使用和,但是在我的系统上,每个进程都显示相同的数据,因此无济于事。 问题答案: 我认为您首先必须浏览/ proc / * / fd中打开的fds,例如 然后在/ proc / net / tcp(或/ proc / net / udp)中查找
我对Android的开发还很陌生。我只是学习它的所有,但感谢我的网络编程背景,它是真的快。 我有一个关于WebViews的问题。当我有一个简单的组件(如图表),但很难用Java绘制时,我就用HTML和CSS构建它,并将它用作WebView。 我的问题看起来像是基于意见的,但我是从表现的角度来问这个问题的。 我想知道,拥有几个简单的webviews对性能有何影响?我知道几乎所有的东西都有库,但是当我
我需要三个实体——用户、订单和产品。订单可以有多个产品,产品可以有多个订单。但是在一个订单中,我们可以有几个相似的产品。如何使用Hibernate来组织它? 我认为其中一种方法是创建另一个实体-OrderProducts,但是我需要使用什么映射?或者有另一种简单的方法可以做到这一点吗? Order.java 产品Java语言 我需要order_products表有数量列,但我不知道怎么做。
uWSGI 是在像 nginx 、 lighttpd 以及 cherokee 服务器上的一个部署的选 择。更多选择见 FastCGI 和 独立 WSGI 容器 。 你会首先需要一个 uWSGI 服务器来用 uWSGI 协议来使用你的 WSGI 应用。 uWSGI 是 一个协议,同样也是一个应用服务器,可以提供 uWSGI 、FastCGI 和 HTTP 协议。 最流行的 uWSGI 服务器是 uw
uWSGI 是一个快速的、纯C语言开发的、自维护的、对开发者友好的 WSGI 服务器,旨在提供专业的 Python web应用发布和开发。可使用 C/C++/Objective-C 来为 uWSGI 编写插件。 架构图: 与 Gunicorn 的性能比较: 配置方法: LoadModule uwsgi_module libexec/apache2/mod_uwsgi.so<Location