.NET分布式Orleans - 2 - Grain的通信原理与定义

💡 原文中文,约5100字,阅读约需13分钟。
📝

内容提要

Grain是Orleans框架中的基本单元,用于表示应用程序中的实体或计算单元。Grain与Grain之间的通信可以通过直接方法调用或消息传递实现。外部客户端与Silo之间的通信通过网络消息传输实现。Orleans使用不同类型的键来标识Grain,如字符串、Guid和整数。IGrainFactory和IClusterClient是用于创建和获取Grains的接口,IGrainFactory用于在应用程序内部创建Grains,IClusterClient用于与Orleans集群进行通信。

🎯

关键要点

  • Grain是Orleans框架中的基本单元,代表应用程序中的实体或计算单元。
  • 每个Silo是独立进程,负责加载、管理和执行Grain实例。
  • Grain之间在同一Silo中通过直接方法调用通信,在不同Silo中通过消息传递通信。
  • 外部客户端与Silo之间的通信通过网络消息传输实现,使用Orleans Messaging Protocol (OMP)。
  • Orleans默认侦听端口11111用于Silo间通信,30000用于客户端到接收器通信。
  • Orleans中使用不同类型的键来标识Grain,包括字符串、Guid和整数等。
  • IGrainFactory用于在应用程序内部创建Grains,IClusterClient用于与Orleans集群通信。
  • IGrainFactory在Silo和客户端中都可用,主要用于创建Grains。
  • IClusterClient用于与Orleans集群通信,除了创建Grains外,还可管理Silo生命周期和订阅事件。
  • IGrainFactory主要用于内部创建Grains,IClusterClient适合外部客户端与Orleans集群通信。
🏷️

标签

➡️

继续阅读