繁体   English   中英

web.py-服务器和同时套接字连接

[英]web.py - server and simultaneous socket connection

我正在使用web.py中的应用程序,该应用程序可以通过带有按钮的网站将命令发送到设备。

我知道在我的网站上按下了哪些按钮,并且在python服务器程序中又得到了一些参数。 Python程序->从SQLite数据库中获取基本命令->添加接收到的参数。 但是我需要同时通过以太网(简单的套接字连接)与远程设备建立连接,以将这些命令发送到设备。 那就是我被困住的地方。

因此,我的网站正常运行,我还编写了一个单独的小型终端程序,以仅与设备建立连接并使用简单的终端接口发送命令。 所以基本上我有程序的两个主要部分,但不能同时工作,而且我不知道如何将它们组合在一起。

我一直在阅读一些信息,以使Web服务器在单独的线程中运行,或者每次我从网站获取信息(命令/参数)时都必须连接并关闭与设备的套接字连接? 有人可以在正确的方向推动我吗?

注意:服务器正在Raspberry Pi上运行

是的,您的问题似乎是由于套接字连接不是线程安全的。

对web.py服务器的每个请求都在其自己的线程中运行,并且如果您想访问与设备的套接字连接,那么如果您的设备支持多个连接,则必须使用锁或管理连接池。

要强制web.py在单线程模式下运行,请参见以下答案:

使用web.py强制单线程请求处理

请注意,您不必锁定所有请求(如该答案所示),并且可以仅在使用连接的部分代码上设置锁定。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM