企业集成的基础概念

企业集成要面临的一个重要问题就是解耦,尽量限制要集成的各个组件之间的关联性,以防止修改其中一个组件会影响其它的组件,来保证各个组件可以独立的进化。

常见的耦合性:Type-level coupling、system-level coupling

type-level coupling,在程序中一个明显的标志,就是一个类调用了大量的其他类

system-level coupling,一个系统调用另一个目标系统时,需要知道目标系统的详细实现才可以调用就属于系统间耦合了,另外,看书里面的意思,系统间耦合还包括其他对目标系统的假设,比如我要调用一个服务时,必须假设服务当前可用,就也算是系统间耦合,这个是不是有点过分了。

Dependency Injection,依赖注入解耦type-level coupling

Event-driven architecture,在该结构中,复杂的程序被拆分成多个组件,各组件之间通过事件进行交互

Synchronous  communication,在同步通信中,一个组件在向目标系统发送请求后,就会一直等待直到目标系统发送回复才接着往下运行。


asynchronous Communication,在异步通信中,一个组件在向目标系统发送请求后,不用等待目标系统发送回复,它可以接着往下运行。


enterprise integration styles:

文件传输:两个系统生成文件,文件的有效负载就是由另一个系统处理的消息。该类风格的例子之一是针对文件轮询目录或FTP目录,并处理该文件。

共享数据库:两个系统查询同一个数据库以获取要传递的数据。一个例子是你部署了两个EAR应用,它们的实体类(JPA、Hibernate等)共用同一个表。

远程过程调用:两个系统都暴露另一个能调用的服务。该类例子有EJB服务,或SOAP和REST服务。

消息:两个系统连接到一个公用的消息系统,互相交换数据,并利用消息调用行为。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,099评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,964评论 25 709
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,803评论 18 399
  • 故人的追寻也就如此,想着的是记忆中的样子,忍不住看一眼,再看一眼。得到了明显的结果,他很好。 是的,我们依旧存在...
    HZ新鲜感阅读 278评论 0 2
  • 昨晚我失眠了,我是那种一般不会失眠的。昨晚愣是躺在床上,怎么也睡不着。于是看了会书,想了会事情。我发现我很少有时间...
    雀岛札记阅读 174评论 0 0