zoukankan      html  css  js  c++  java
  • 企业服务总线Enterprise service bus介绍

          企业服务总线(Enterprise service bus). 以往企业已经实现了很多服务, 构成了面向服务的架构,也就是我们常说的SOA. 服务的参与双方都必须建立1对1 的联系,让我们回顾一下SOA架构有哪些基本的要求:

    1. SOA在相对较粗的粒度上对应用服务或业务模块进行封装与重用;
    2. 服务间保持松散耦合,基于开放的标准, 服务的接口描述与具体实现无关;
    3. 灵活的架构 -服务的实现细节,服务的位置乃至服务请求的底层协议都应该透明;

    在SOA中,我们还需要这样一个中间层,能够帮助实现在SOA架构中不同服务之间的智能化管理。这是我们就需要企业服务总线(Enterprise service bus).

    在N层结构的ESB:
    ESB_jee

    企业服务总线(Enterprise service bus)通讯层:

    ESB3

    ESB的主要功能是:

    1.对各个服务之间消息监控与路由

    2.解决各个服务组件之间通信

    3.控制服务版本与部署

    4.满足服务像事件处理,数据转换与映射,消息与事件查询与排序,安全或异常处理,协议转环,保证服务通讯的质量.

    又有下表:

    定位清晰

    ESB有助于从服务消费者服务提供者之间解耦。ESB提供了一个集中的平台使任何应用程序进行相互通信,使消息发送者到信息接收者解耦。

       

    协议转换

    ESB应该能够无缝地集成不同传输协议应用程序如HTTP,JMS,FTP,文件批处理和SMTP,TCP。

       

    消息转换

    ESB提供将消息从一种格式转换为其他基于开放的标准,如XSLT和XPath。

       

    消息路由

    ESB一个重要的功能是决定传入消息的最终目的地,通常这归类为消息路由。

       

    消息增强

    ESB提供基于传入消息附加丢失数据的消息增强机制.

       

    安全

    身份验证,授权与加密功能,为确保传入的消息安全, 防止有人恶意使用的ESB,以满足服务提供者信息安全。

       

    监控与管理

    监控和管理环境可配置高性能和可靠的特性,并且还可以监视的运行时消息流.


    ESB纵向图示意图:

    ESB_Component_Hive

    主要优点:

    增加灵活性,更容易适应需求变化
    由点扩展到整个企业的部署解决方案(分布式总线)
    更多的配置,而不是集成代码
    没有集中的规则引擎,没有集中的broker
    零停机时间;使企业成为“可重构”的解决方案 
     
    主要缺点:


    增加系统开销
    通信速度较慢,特别是对那些已经兼容的服务

    目前开源ESB产品与项目:

    • Apache ServiceMix

    • Apache Synapse

    • JBoss ESB

    • MassTransit

    • NetKernel

    • NServiceBus

    • Petals ESB

    • Spring Integration

    • Open ESB

    • WSO2 ESB

    • Mule

    • UltraESB

    • Talend ESB

    • Shuttle Service Bus


    希望对您软件架构有帮助.


    作者:Petter Liu
    出处:http://www.cnblogs.com/wintersun/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
    该文章也同时发布在我的独立博客中-Petter Liu Blog

  • 相关阅读:
    用心合作
    添加IE右键菜单 以 调用和运行 自己的程序或文件
    VS2005 My.Computer.Registry 对象 操作注册表 简单示例
    项目经理职业生涯
    Visual studio.NET单元测试中Assert类的用法(转载)
    如何正确理解自动化测试?(转载)
    浅析ASP.NET单元测试中的调试(转载)
    软件项目质量管理实战总结(转)
    主题:小公司如何做项目管理(转)
    什么是“极限编程”?(转载)
  • 原文地址:https://www.cnblogs.com/wintersun/p/2977875.html
Copyright © 2011-2022 走看看