News Information
本文档主要介绍架构层面如何实现SOA架构,至于文档中指及的相关技术、组件、产品、工具如何使用大家可以找度娘,与可以与博主交流,目前博主主要从事次方ESB(CFESB)、次方MDM(CFMDM)的运营,提供免费云ESB,云MDM使用,收费的只是为你提供的服务:)
博主简历:从事企业信息化集成10年,主要从事业务系统(ERP/OA/CRM等)服务ESB集成,工业设备数据采集集成(PLC/IO/CNC+ESB)。a long time 是开发出生主要使用J2EE开发管理平台。人事了一堆行业(教育行业做学校教务系统/工业企业信息集成/工程行业材料项目管理);会使用一堆数据库(mysql/mssql/db2/oracle等);会做一堆方案(集成方案/实现方案/主数据方案/企业信息化架构方案)
所属企业:重庆九纬次方科技有限公司 http://www.cfesc.com :主要从事免费云ESB平台运营、ESB/MDM技术咨询服务、ESB/MDM定制开发服务、API服务定制开发、软件定制开发服务、工业设备数采ESB服务的专业互联网企业。
ESB免费用,反正也不要钱,为什么不试试呢:http://www.cfesc.com/product-show.html
平台计划运营时间:2021年4月,目前都是在做技术准备。主要是钱少、人少、事多 :(
一、什么是SOA?
1、SOA(Service Oriented Architecture)“面向服务的架构”:他是一种设计方法,其中包含多个服务, 服务之间通过相互依赖最终提供一系列的功能。一个服务 通常以独立的形式存在与操作系统进程中。各个服务之间 通过网络调用。
2、微服务架构:其实和 SOA 架构类似,微服务是在 SOA 上做的升华,微服务架构强调的一个重点是“业务需要彻底的组件化和服务化”,原有的单个业务系统会拆分为多个可以独立开发、设计、运行的小应用。这些小应用之间通过服务完成交互和集成。
结论:SOA是一种软件开发架构,提供了软件开发内部本身是以方法、函数进行而变为请求+服务形式。
二、SOA在Java领域有两套标准:
1、一个是SUN推出的JBI(没有得到BEA和IBM的承认);
2、IBM和BEA等公司推出的SCA和SDO标准。
相关概念解释如下:
结论:
1、JBI:JBI之关注Java组件只处理Java组件的集成。
2、SCA:是一种SOA实现架构的标准,原则上支持所有开发语言。
三、软件开发使用ESB实现SOA架构:
在业务系统开发中引入ESB产品,是把ESB产品相关组件引用到程序模块中,最终发布产品是连同ESB模块一起打包进行发布。
1、符合SCA规范。
2、软件开发中引用ESB功能模块;
四、企业信息化使用ESB实现SOA架构:
通过引入ESB产品,并根据企业业务程序与业务系统之间的消息流进行数据接口改造,实现企业信息化SOA架构。
1、业务平台开发符合SCA规范。
2、业务系统之间消息互通使用ESB平台。
3、实现企业业务功能服务化,集中化管理。
五、企业未使用ESB时的问题:
问题分析: 如果其中的一个服务连接故障异常?
1、B系统中查询请求是否到达,到达后是否返回?
2、要到A系统中查询请求是否发出,返回的数据是否拿到.
3、如果两个系统没有做可视化的监控管理,
结果:程序员之间相互推脱与使用单位一直等待问题解决。
痛苦:使用单位根本无法拿出证据来说明问题出在A还是B。
六、ESB助力企业实现SOA架构:
企业信息集成通过引入ESB管理平台,对所有业务之间交互的消息服务进行管理、监控,实现企业架构SOA化,标准的单个服务ESB数据流演示如下:
1、业务系统A向ESB发起请求。
2、ESB接收到请求后,根据自身注册的服务向服务系统B转发请求。
3、服务系统B收到ESB中转的消息请求后,进行业务处理,处理完成向ESB返回处理结果。
4、ESB获得服务系统的处理结果后,向请求系统A转发处理结果。
服务监控:在四个步骤中,每一个步骤都受到ESB的监控,如果请求中断或异常,ESB平台能知道哪一个请求节点出错,出了什么错,为什么出错,找到原因后协调A、B系统进行联合修改调试。
七、企业SOA服务化集成整体架构:
八、ESB平台应具备的功能: