我有2个代码库,一个在python中,一个在C++中。我想在他们之间分享实时数据。我想评价哪些选项最适合我的具体使用情况:在Python代码和C++代码之间共享信息(IPC)
- 许多小数据从C++程序的Python程序
- 更新他们在同一台机器上都运行
- 可靠性是非常重要的
- 低延迟是好的,有
我可以看到几个选项:
- 一个进程写入一个平面文件,另一个进程读取它。它不可扩展,速度慢,I/O容易出错。
- 一个进程写入数据库,另一个进程读取它。这使得它更具可扩展性,稍微不易出错,但仍然非常慢。
- 将我的Python程序嵌入到C++中或其他方式。我拒绝了这个解决方案,因为两个代码库都相当复杂,为了维护性的原因,我最好让它们保持分离。
- 我在两个程序中都使用了一些套接字,并直接发送消息。这似乎是一种合理的方法,但并没有利用它们在同一台机器上的事实(它将通过使用本地主机作为目的地而略微优化,但仍然感到麻烦)。
- 使用共享内存。到目前为止,我认为这是我找到的最令人满意的解决方案,但缺点是实施稍微复杂一些。
还有没有其他的解决方案,我应该考虑?
直接使用C++/Python中的Python/C++代码? –
RESTful API应该对你最有帮助,完美的独立语言api – AlokThakur
@Revolver_Ocelot,我拥有2个代码库,所以是的,我可以直接在每个代码中使用代码。 – DevShark