我花了几周时间寻找能够满足以下要求的守护进程:
我在F / LOSS世界中发现的最接近的东西是D-Bus,它满足所有这些标准,除了第一个:它无法可靠地与远程连接一起使用。我花了很多时间研究其他选项(ESB和MQ守护进程 - 花费大部分时间用0MQ和RabbitMQ)并且它们都以某种方式不足:ESB往往非常复杂,具有很高的学习曲线和MQ守护进程倾向于提供一半的解决方案(路由),而另一半(错误恢复)非常复杂,如果不是不可能的话。
除了一个客户说“我提供服务'foo'”以及另一个客户说“我想在服务'foo'上调用方法'bar'时,我不会寻找任何出色的路由功能。”
似乎这样的事情已经存在,我不愿意自己动手。
用例是我将在许多主机上拥有许多进程。每个主机都有一个调控器进程/服务,可以从控制面板控制这些进程的生命周期。流程本身也将是服务,允许直接查询状态以及此面板的重新配置请求。诀窍是进程会来来去去,所以端点的静态配置不是我真正想要的;我宁愿让每个进程负责告诉守护进程“我是某某服务”,然后让守护进程进行客户端间路由。
我开发此系统时唯一缺少的是可以在所有这些进程之间路由RPC请求的东西。那里有没有这样的守护进程,还是有其他模型可以更好地满足我的需求?