你的位置:首页 > ASP.net教程

[ASP.net教程]helios架构详解(二)客户端架构和cluster


helios的客户端架构和服务器端类似,只有部分类有所区别(黄色的),下图是客户端的架构

 可以看出实际上只有IConnection的俩个实例(TcpConnection、UdpConnection)是和服务器端略有不同。由于客户端也不涉及到回传问题,所以也没有Channel相关内容。

客户端的Cluster

首先还是上图,展示客户端的Cluster

 上图中根据绿线进行分割,可以分为三部分:

  • 左侧工厂
  • 上侧Cluster
  • 下侧建立connection的方法

helios客户端会维护服务器端的列表(Cluster)。通过ClusterManagerFactory创建相应的ClusterManager。通过ClusterManager维护服务器端的借点列表。(RoundRobinClusterManager负责多服务器节点,SingleNodeClusterManager表示服务器端只有单一节点)。

NormalConnectionBuilder只是一个工厂模式,创建相应的IConnection对象。

最后PooledKeyedConnectionProvider负责维护IConnection对象和ClusterManager。通过IConnection判断服务器端节点是否畅通,通过ClusterManager维护服务器节点的

状态。