Orleans:构建高性能分布式Actor服务
上QQ阅读APP看书,第一时间看更新

第4章 数据传输与远程过程调用

在Silo节点服务模型中,底层的客户网关及消息传递层需要为Orleans运行时提供可靠的Silo间及Silo与Orleans客户端间消息传递服务。在Orleans应用集群中,Silo服务节点通过在TCP/IP上进行消息传递,实现集群内部点对点连接,并由此保证任意Silo服务节点间消息的双向连通性。除此之外,Orleans应用框架还允许Orleans客户端通过任意Silo节点建立其与应用集群的服务类连接,因此Silo服务节点同时还需负责管理其本地的客户端连接及相应的消息路由与转发逻辑。

Orleans的节点间点对点数据通信是通过传递Orleans消息(Message)实现的,Orleans集群内的调用远程过程调用则是将请求上下文(请求接口、参数及调用方地址等信息)封装为一个Orleans消息并投递至目标Silo服务节点,再由目标Silo服务节点解析并执行。