WisDom.Net 框架设计(二) 服务总线

时间:2023-12-25 10:40:55

WisDom.Net 框架设计--服务总线

1.Soa 简介

    soa 就是面向服务的体系结构 是一个组件模型,不同的组件之间通过定义良好的接口联系起来。就像盖房子一块砖头一块砖头的砌墙,一片一片的加瓦。SOA架构的思想就主张不要再一块砖一片瓦的干,一面墙一个屋顶一根梁等等都是人家做好的,拿过来自己搭起来就把房子盖好了,需要每家的房子要求不一样再自己改,墙上开个窗,屋顶搞个烟囱都随你自己搞,自己搞的这部分就是需要你自己做造型砌砖的地方。好处就是开发效率高,系统稳定,实施维护便捷,不管是开发还是维护成本都低廉

2.什么是服务总线

      企业服务总线(ESB)是分布式的、基于消息的集成解决方案,遵循开放的标准。ESB的角色是在各种IT资源——比如企业中分布于不同的系统上的应用系统、平台和服务之间——更容易的建立可靠的通讯。当IT部门越来越关注构建SOA来降低开发成本并提升业务敏捷时,ESB就成为了建立企业SOA关键的第一步

3.WisDom.net.SevrInfo的设计思考

       按照服务总线的定义在 WisDom.net.SevrInfo 中需要提供 这么几个功能 1.维护各个服务之间的心跳机制 2.提取各个服务的地址。进行相关接口的调用类似于注册服务的的功能 各个服务用wcf来进行通信

WisDom.Net 框架设计(二) 服务总线

 [ServiceContract]
public interface IRegSeverice
{
/// <summary>
/// 服务上线
/// </summary>
/// <param name="ServerName"></param>
[OperationContract]
void ServerLogin(string ServerName, string ServerAddress);
/// <summary>
/// 服务心跳更新
/// </summary>
/// <param name="ServerName"></param>
[OperationContract]
void ServerUpdate(string ServerName);
/// <summary>
/// 服务离线
/// </summary>
/// <param name="ServerName"></param>
[OperationContract]
void ServerLeave(string ServerName);
/// <summary>
/// 订阅服务
/// </summary>
/// <param name="Servername">服务名称</param>
/// <param name="SubscriptionName">要订阅的服务名称</param>
/// <returns></returns>
[OperationContract]
Dictionary<string,string> SubscriptionServer(string Servername, List<string> SubscriptionName); }