应用服务器已经成为电子商务应用中一种非常关键的
中间件技术。如今,各大主要软件厂商纷纷将应用服务器作为其电子商务平台的基础,
IBM的
Websphere便是典型例子,
Oracle的Internet Application Server 也成为其平台产品的重要部分,Sybase 的Enterprise Application Server更是其门户产品的基础。本文阐述了应用服务器相关技术及发展方向,并就目前主流的应用服务器产品进行了简单介绍。
Web应用的开发经历了三个阶段。在第一阶段,大家都使用Web服务器提供的服务器扩展接口,使用C或者Perl等语言进行开发,例如CGI、API等。这种方式可以让开发者自由地处理各种不同的Web请求,动态地产生响应页面,实现各种复杂的Web系统要求。但是,这种开发方式的主要问题是对开发者的素质要求很高,往往需要懂得底层的编程方法,了解HTTP协议,此外,这种系统的调试也相当困难。
在第二阶段,大家开始使用一些服务器端的脚本语言进行开发,主要包括ASP、PHP、Livewire等。其实现方法实质上是在Web服务器端放入一个通用的脚本语言解释器,负责解释各种不同的脚本语言文件。这种方法的首要优点是简化了开发流程,使Web系统的开发不再是计算机专业人员的工作。此外,由于这些语言普遍采用在HTML中嵌入脚本的方式,方便实际开发中的美工和编程人员的分段配合。对于某些语言,由于提供了多种平台下的解释器,所以应用系统具有了一定意义上的跨平台性。但是,这种开发方式的主要问题是系统的可扩展性不够好,系统一旦比较繁忙,就缺乏有效的手段进行扩充。此外,从一个挑剔者的眼光来看,这种方式不利于各种提高性能的算法的实施,不能提供高可用性的效果,集成效果也会比较差。
为了解决这些问题,近年来,出现了一个新的Web应用开发方法,也就是应用服务器的方式。由于应用服务器本身也是一个正在不断发展的概念,所以我们还很难给出一个完全确切的定义,不同的产品之间也有很大的差别,但是其核心结构,以及解决的主要问题都是相近的,区别仅仅在于各个产品解决问题的算法不同。下面我们主要分析一下需要解决的问题以及一般的解决方法,这些方法都各有利弊,适用于不同的场合。