基于中间件的软件开发方法探讨
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于中间件的软件开发方法探讨
摘要:最早的软件开发方法就是编程、写代码的,其缺点在于无法复用,为此提出了基于中间件的软件开发方法,通过把一些繁琐的程序通过中间件的软件来完成,供其它程序调用。在互联网得到普及重视之后,软件开发方法在中间件的出现后上又了有新发展。中间件处于操作系统软件与用户的应用软件的中间。中间件在操作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。列举几种常见中间件的软件开发方法,对基于中间件的软件开发方法进行探讨。
关键词:中间件;软件开发;方法探讨。
Discussion on the Method of Software Development Based
on Middleware
Abstract: The earliest methods of software development is programming and writing code, but it is not able to reuse. In this case, we proposed the method of software development based on middleware, so we can complete the red tape programming through the middleware, and use for the other programs. After the popularity of the Internet and the emergence of middleware, software development methods have had some new developments. Middleware is in the middle of the operating system software and application software of the user. Middleware is on top of the operating system, network and database, lower strata of application software. The overall effect is to provide an operation and development environment for the upper- layer application software. In order to help users to develop program flexibly and efficiently and integrate complex software, here are some common development methods of middleware, and have a discussion on it.
Key Words:Middleware; Software Development; Discussion on the Method 一、引言
由于计算机技术的快速发展,以及与之相适应的新技术的不断出现,各行各业对软件开发的速度和质量要求有了很大提高。传统的“手打”式软件开发方式已不能满足现在的软件市场需求;同时,加之软件规模越来越大,这些都引导人们开始思考如何更好更快地更简单的开发软件。中间件的软件开发概念应运而生。
二、中间件简介
中间件(middleware)是一种独立的系统软件或服务程序,分布式
应用软件借助这种软件在不同的技术之间共享资源,中间件位于客
户机服务器的操作系统之上,管理计算资源和网络通信。常见中间
件类型:
事务处理(TP:Transaction Processing)监控器:对在对象间的事务处理进行监控,以保证操作的顺利实现。
分布式计算环境(DCE:Distributed Computing Environment):是创建运行在各个平台上的分布式应用程序所用的一种相应技术服务。
企业服务总线(ESB : Enterprise Service Bus):ESB 指一类开放的、用于标准的分布式的信息传递的中间件。通过 XML、Web 服务接口以及标准化基于规则的路由选择文档等支持,ESB 为各种应用程序提供安全的互相间的使用性。
远程过程调用(RPC:Remote Procedure Call):是客户端向服务端发送的关于所运行程序的请求时所用的标准。
对象请求代理(ORB:Object Request Broker):指为用户提供与其他分布式网络环境中的对象信息交流的接口。
数据库访问中间件(Database Access Middleware):指支持用
户访问不同操作系统或运行程序中的数据库。SQL 就是该类的中间件。
三、实例分析
1. 面向消息的中间件
MOM指的是通过高效的消息传递机制进行平台独立的的数据交流,并基于数据通信的分布式系统的集成。目前通用的的MOM中间
件实例有IBM的MQSeries、BEA的MessageQ等。消息的传递和排队
技术有以下三个重要特点:
(1)通讯程序可在不同的时间运行程序不用在网络上直接交流,而
是间接地把消息放到消息队列中,因为程序间没有直接的联系。因此,他们不必同时运行。到合适的队列中的消息,目标程序甚至根
本不需要正在运行,即使目标程序运行,并不意味着要立即处理该
消息。
(2)程序结构的应用是不具有约束力的,在复杂的应用程序之间的通讯,不仅可以是一对一的关系,而且还可以是一对一,一对多和多
对多关系,或由多种方法组合。多种通信手段的结构并没有增加应用程序的复杂性。
(3)程序与网络的复杂性隔离。程序把消息放进消息队列或在消息队列中取出消息进行通讯。比如维护程序和队列间的关系等是MOM的任务,程序不直接跟其他程序通信,它们不涉及网络通信的复杂性。
2.远程过程调用
远程过程调用是一种广泛使用的分布式应用程序的方法。一个应用程序使用RPC来“远程”执行在不同地址空间里的过程,且效果和本地调用一样。采用线程能够异步调用。在RPC模拟中,client 和server只要具备了相应的接口,且具有RPC运行支持,就可以完成的互相运行,且不必局限于必须的server。所以,RPC为client/server分布式计算提供了必要的支持。
3.对象请求代理
对象技术和分布式计算技术的发展,在于彼此形成一个分布式对象计算,进而形成当今软件技术的主流的发展方向。对象管理集团OMG提出的对象管理结构OMA,对象请求代理是这种模式的核心组成部分。它的作用是提供一个通信框架,透明地在异构的分布式计算环境中传递对象请求。
对象请求代理是对象总线,在CORBA规范中位于中心地位,定义了异构环境下发送请求和接收响应,是建立对象之间client/server关系的中间件。对象请求代理使对象可以透明地向其他对象请求或接受其他对象的响应,这些对象可以是本地或远程机器上也可以位于远程机器。ORB拦截请求调用,并负责找到可以实现请求的对象,传送参数,调用相应的方法,并返回结果。
4. 事务处理监控
事务处理监控(Transaction processing monitors)最早出现在大型机上,为客户提供支持大规模事务处理环境中可靠运行。随着分布式计算技术的发展,大规模事务处理的需求,比如商业活动中大量的关键事务处理的分布式应用程序。事务处理监控界于client和server之间,进行事务的管理和协调,负载均衡,故障恢复等,以提高系统的整体性能。它可以被看作是事务处理应用程序的控制中枢。一般来说,事务处理监视器具有以下特点:
(1)进程管理,包括启动server过程,分配任务,监督其执行情况和负载均衡。