gpt4 book ai didi

c++ - 为对等系统编写 C++ 客户端/服务器的最佳 RPC 包是什么?

转载 作者:太空宇宙 更新时间:2023-11-04 14:17:15 25 4
gpt4 key购买 nike

我有一个执行计算密集型本地处理的程序。计算包具有 16MiB 输入缓冲区,并生成 10KB 到 16MiB 的输出。这一切都发生在多线程环境中。

我有一些用户是计算密集型的。我有兴趣添加对点对点多处理的支持。也就是说,客户端将在组织中的多台计算机上运行。 master 会找到可用的客户端,向它们发送 16MiB 缓冲区,然后获取结果。

master 将有一个可用客户端列表。然后它会向每个客户端发送一条消息,说明它是免费的。客户端将为他们拥有的每个核心启动一个线程。每个线程都会向 master 请求一个工作缓冲区,计算结果,然后将结果发送给 master。 Master 会将每个客户端的结果合并到最终输出中。

典型的运行涉及处理 100 到 50,000 个 16MiB 缓冲区。输出通常在 100MB 到 10GB 范围内。缓冲区之间没有数据依赖性。

我正在寻找安排客户端和服务器之间通信的最佳方式。我的计划是使用某种 RPC。我不想在客户端或服务器中嵌入 Web 服务器。相反,我的计划是简单地在 TCP 套接字上接收连接并具有某种基本的 RPC。

以下是我正在考虑的选项:

  1. 我可以充当自己的客户端/服务器系统,并使用 Protocol Buffer 将整个系统组合在一起。
  2. 我可以使用现有的 RPC systems for potocol buffers 之一.
  3. 我可以嵌入网络服务器并使用 XMLRPC。

实现语言为C++。该程序为 Linux、MacOS 编译,并使用 mingw 为 Windows 编译。

谢谢。

最佳答案

我们发现0MQ符合我们的标准。

关于c++ - 为对等系统编写 C++ 客户端/服务器的最佳 RPC 包是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10238176/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com