第一章:软件构件与中间件
1.分布式软件的基本概念:分布式软件指运行在网络环境中的软件系统,而网络环境是一群通过网络互相连接的处理系统,每个处理节点由处理机硬件、操作系统及基本通信软件等组成。
(1)三层结构相对于两层结构的改进:
两层结构的缺点:
①客户端的负担仍然比较重:客户端仍要处理复杂的数据。
②客户端的可移植性不好:处理复杂必然牵涉更多的移植性问题;每个客户端上都要安装数据库驱动程序。
③系统的可维护性不好:客户端包含过多的商业逻辑;商业逻辑与人机交互界面交织在一起。④数据的安全性不好。
三层结构的优势:
①更好的性能和可伸缩性。
②大量的中间层中间件平台提供丰富的系统级服务,使得开发人员可以以更少的工作量开发出更复杂、可靠、高效的软件系统。
③剩下的内容是对两层结构缺点的改进。
2.软件构件的基本概念:构件指系统中可以明确辨识的构成成分;软件构件指软件系统中具有一定意义的、相对独立的构成成分,是可以被重用的软件实体。
3.中间件的基本概念:在操作系统与应用系统之间的一层软件,为分布式应用的开发、部署、运行与管理提供支持。
(1)典型集成中间件为软件开发提供的三种基本支撑:
提供构件运行环境
①管理构件的生命周期
②管理构件的实例
③管理构件的元信息等
提供互操作机制
①集成中间件都提供了很强的高层通信协议以屏蔽节点的物理特性以及各节点在处理器、操作系统等方面的异构性;
②基于中间件的互操作支持,开发人员在开发与调用分布式对象时,均不需自己编写处理底层通信的代码。
③共同特征就是帮助应用程序完成编组与解组等跨越网络通信的底层工作,实现远程过程/方法调用中间件的功能。
提供公共服务
①公共服务又称为系统级服务,指由中间件(应用服务器)实现的、应用程序使用的软件系统中共性程度高的功能成分。
由中间件而非应用程序实现
应用程序中通常会调用其实现的共性功能
②中间件提供的主要公共服务包括:
命名服务
事务服务
安全服务
持久性服务、消息服务、分布式垃圾回收服务、资源管理服务等