Java平凡之路-成长篇(03) -SOA和EAI(架构)

  • 大家好,我是郭永峰,微信和QQ都可以搜索(1030103135)添加我为好友,一起学习交流
  • 一名普通的 IT 开发工程师 和 IT讲师

技术这东西,如何你的公司不是有相关的业务,可能你一辈子都不会去了解

今天给大家讲下SOA和EAI概念,这是我最近在接触的东西

 

SOA的概念

》SOA(Service Oriented Architecture),面向服务的架构

》SOA是一种架构实现方式,它可以将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。

》SOA是一种粗粒度、松耦合服务架构,服务之间通过简单、精确定义接口进行通讯,不涉及底层编程接口和通讯模型。

 

EAI的概念

》EAI(Enterprise Application Integration,企业应用集成),就是将各个企业内部应用集成在一起进行通讯

》它是将基于各种不同平台、用不同方案建立的异构应用集成的一种方法和技术。

》EAI 通过建立底层结构,来联系横贯整个企业的异构系统、应用、数据源等,实现企业内部的 ERP、CRM、SCM、数据库、数据仓库,以及其他重要的内部系统之间无缝地共享和交换数据。

画图讲解

》只是上面的文字,可能并不是十分的清析,现在来画个图深入理解

》一个大企业内部是很多应用,这里以银行系统为例

》一个银行内部的应用是非常多的,那么就涉及到多个应用内部通讯

》当然银行的有些应用并不是内部使用,还可能会给其它银行使用,比如ATM跨行取款

假设:银行各系统如下

如下图,如果银行内部多个系统要相互通讯,这种耦合度是非常高的,而且实现比如麻烦

(可能有人会问,存取款系统为啥要与房贷系统通讯?想想你存钱在储蓄卡,到期是不是自动还款,房贷系统肯定是后期才有的的业务,一开始的银行并没有房贷业务,只是后面又拓展的业务,所以一般不会再把这个块的业务放在存取款系统上,而是会新开发个系统)

Java平凡之路-成长篇(03) -SOA和EAI(架构)

那么如何将企业内部多个应用集成在一起(EAI),使得各个应用通讯松耦合?

Java平凡之路-成长篇(03) -SOA和EAI(架构)

那么上面这种架构就SOA的架构方式,EAI我们可以说成是SOA总线,它的角色非常重要

那么各个应用间定义通讯规则都非常重要的,一般银行系统使用xml来定义数据传输规则

因为xml数据更加明了可扩展,当然为了提高性能,会定义xml的数据大小不能超过4kb

那么EAI具体要怎么实现?以后有时间再写了,或者可以加我好友交流沟通

 

About Me

》关于更多我的个人信息请点击:https://mp.weixin.qq.com/s/5lBM-NooXqaHJ8bRtkxHKA

》另外本人有全程亲自录制的Java全套视频,有需要的可以找我获取

》01~04阶段可免费获取,后面课程付费获取

付费服务:在线辅导(学习过程中可以随时微信找我,帮您解疑答惑)和后续Java视频免费更新服务,视频价格贵在服务

Java平凡之路-成长篇(03) -SOA和EAI(架构)

Java平凡之路-成长篇(03) -SOA和EAI(架构)