Web 应用开发大致经历了三个阶段。
在第一阶段,大家都使用 Web 服务器提供的服 务器扩展接口,使用 C 或者 Perl 等语言进行开发,例如 CGI、API 等。这种方式可以让开 发者自由地处理各种不同的 Web 请求,动态地产生响应页面,实现各种复杂的 Web 系统 要求。但是,这种开发方式的主要问题是对开发者的素质要求很高,往往需要懂得底层的编 程方法,了解 HTTP 协议,此外,这种系统的调试也相当困难。
在第二阶段,大家开始使用一些服务器端的脚本语言进行开发,主要包括 ASP、PHP、 Livewire 等。其实现方法实质上是在 Web 服务器端放入一个通用的脚本语言解释器,负责 解释各种不同的脚本语言文件。
第三阶段应用服务器的方式。目前,应用服务器已经成为电子商务应用中一种非常关键的中间件技术。如今,各大主要软件厂商纷纷将应用服务器作为其电子商务平台的基础,如 IBM 的 Websphere,Oracle 的 Internet 应用服务器,Sybase 的 Enterprise 应用服务器等。本节将阐述应用服务器的概念、 相关技术及发展方向,并就目前主流的应用服务器产品进行简单的介绍。
应用服务器的概念
在分布式、多层结构及基于构件和服务器端程序设计的企业级应用开发 中,它提供的是一个开发、部署、运行和管理、维护的平台。它可以提供软件“集群” 的 功能,因而可以让多个不同的、异构服务器协同工作、相互备份,以满足企业级应用所需要 的可用性、高性能、可靠性和可伸缩性等。
应用服务 器可以帮助企业快速架构一个基 Internet 的电子商务系统,而且拥有极高的稳定性、可扩展 性和安全性。
它能够:
(1)更合理地分工企业级应用开发,加快应用的开发速度,减少应用的开发量。
(2)应用设计、开发、部署、运行、管理、维护的平台。
设计:应用服务器完成底层通信、服务,并屏蔽掉复杂的底层技术细节,向用户提供结 构简单、功能完善的编程接口,让用户可以专心于商务逻辑的设计。
开发:应用服务器提供了完全开放的编程语言和应用接口,用户可以用任何自己习惯的 开发工具来工作。另外应用服务器自己也提供快速开发的工具和手段,帮助用户提高开发效 率。
部署:应用服务器可以部署在任何硬件平台、任何操作系统上,而且可以分布在异构网 络中,应用服务器帮助用户在复杂的网络环境中配置系统参数,使系统发挥最大的性能,拥 有最好的稳定可靠性。
运行:应用服务器采用的是开放技术标准,它提供了一个完整的标准实现,即提供了系 统的运行环境,任何基于同样标准的系统都能很好地运行于这个环境中。在运行中提供应用 系统的名字解析、路由选择、负载平衡、事务控制等服务,并提供系统容错、修复、迁移、 升级扩展等功能。
管理:应用服务器让用户通过图形化的界面方便地管理自己的资源,而且在系统运行时 也能动态监控和管理。
(3)使得应用与底层平台无关,便于商业逻辑的实现与扩展。
(4)为企业应用提供现成的、稳定而强健的、灵活的、成熟的基础架构。
应用服务器通过分布式体系来保障这一点,表现为:
当系统处理能力不够时,可以通过简单地增加硬件来解决;
动态调整不同主机间的负载可以最大地利用系统资源,同时提高单机的稳定性;
当系统中的某台机器出现故障时,它的工作可由其他机器来承担,不会影响系统整体的运行, 即无单点故障。