分布式服务总线

服务总线就是指将系统中所有的公共服务汇总起来,形成一个服务池,各个独立模块需要服务时,只需要向总线索取就行。
  这是服务总线最基本的功能,再加上面上接口的支持,服务总线能够大大的解耦各个模块(或子系统)之间的耦合关系。
 
  服务总线的服务一般是模块或子系统暴露出来给别的模块和子系统调用的。而子系统内和模块内部使用的服务建议不暴露到服务总线中去。一来可以减少服务总线的管理压力。
二来这也是良好设计的考虑: 就是不要暴露外部不需要的接口。

  服务总线除了集中管理服务和解耦之外,还可以提供一些额外特性来支持应用:
 
  1. 可向用户屏蔽远程与本地服务, 当客户端向服务总线获取到一个服务时,客户端不需要知道这个服务是本地还是远程的。服务总线自动帮它适配。
  2. 自动却换可用与不可用,当服务因为网络或硬件变成不可用时,服务自动会失败,当恢复了时,服务将自动变成可用,而客户端不会受影响而需要重启服务。
  3. 管理同名服务,多个实现服务可对应同一个名字,由服务总线集中管理,甚至可以对其进行优先级排序,或者随机排序,这样可实现在服务级上的负载均衡。
  4. 管理服务之间的依赖关系。自动管理服务的复杂依赖关系,保证给客户端使用的是个内部状态正常的服务

猜你喜欢

转载自xiaoyuwei.iteye.com/blog/1133105
今日推荐