我正在开发一个相当复杂的应用程序,我将直接进入设置,以便我可以解释工作流程。
我正在考虑在进程和客户端之间建立TCP / IP通信(可能2和3将是服务器/客户端混合,因此实现轮询效果并对数据采取行动)我的问题是:
这是在应用程序之间进行通信的最佳方式吗?
应用程序的每个实例将仅由单个用户使用,因此,如果没有应用程序正在读取/写入大数据,仅读取命令和元数据,那么硬件要求是什么,因为应用程序是在单台机器上运行(所以可以访问文件系统等)?
信息: 的 该系统将在Debian环境中运行,在低端硬件(1Ghz CPU,256-512MB RAM或类似的东西)上运行,该应用程序将完全用Python构建
答案 0 :(得分:1)
查看ZeroMQ
ØMQ(也称为ZeroMQ,0MQ或zmq)看起来像一个嵌入式 网络库,但就像一个并发框架。它给你 在各种传输中携带原子消息的套接字 进程内,进程间,TCP和多播。您可以连接套接字 N-to-N具有扇出,发布子,任务分配等模式 请求 - 应答。它足够快,可以成为集群的结构 产品。其异步I / O模型为您提供可扩展的多核 应用程序,构建为异步消息处理任务。它有一个 语言API的得分,并在大多数操作系统上运行。 ØMQ来自 iMatix和LGPLv3开源。