不相关进程的Python多处理

2024-06-01 22:04:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我有许多进程是单独生成的,而不是从父进程到子进程。进程需要向特定的进程发送消息。接收进程地址(pid)可以存储在数据库中,但进程不能共享内存中的任何公共变量。在

我找不到任何方法用pythons多进程包来实现这一点,现在我正在研究一个基于套接字的服务器,但是这个问题仍然让我好奇,这种架构是否可以通过多处理来实现——其优点是可以轻松传递可选择的对象。在


Tags: 对象方法服务器数据库消息进程架构地址
1条回答
网友
1楼 · 发布于 2024-06-01 22:04:22

The processes need to send a message to specific processes. The receiving processes address (pid) can be stored in a database, but the processes cannot share any common variables in memory.

数据库?为什么?每个人都使用一个文件来完成这个任务,因为文件是廉价的、可用的,而且您只存储一个整数值。在

还有。既然你要使用一个文件,你就有了更多有趣的选择。在

  1. 每个进程将消息写入命名管道。接收进程从命名管道中取出请求。

  2. 每个进程将消息写入文件。一个简单的锁确保一次只有一个进程可以访问该文件,从而确保序列化。从接收文件的进程读取。

  3. 每个进程都使用HTTP向接收进程发出RESTful请求。接收进程使用精简的HTTP服务器框架来处理请求。

  4. 每个进程都使用一个消息队列对消息进行排队。接收过程使消息出列。队列是一个文件。

是的,还有更多。但他们开始变得特定于操作系统。在

相关问题 更多 >