假设一种您需要登录到网站上访问电子邮件账户的场景。您需要提交登录详细信息进行验证,如用户名和密码。网站使用服务器端程序接受并验证登录信息。这些服务器端程序是用不同的服务器端技术编写的,如公共网关接口(CGI)、Active Server Pages(ASP)及servlet。
CGI脚本是用C、C++、Perl等编程语言编写的。在应用服务器使用CGI脚本处理客户机请求的情况下,服务器创建单独的CGI脚本实例来处理请求。因此,多个请求并发时会影响服务器的效率。
ASP是一种允许开发人员在同一页面中结合使用HTML和脚本语言的服务器端技术。ASP对象时多线程对象,因而能同时服务多个请求。其限制在于不能与所有商业Web服务器兼容。
servlet是用Java编写的服务器端程序。与CGI脚本不同,servlet初始化代码只执行一次。此外,每个客户机请求由服务器中单独的线程处理。这样就避免了创建不必要的进程,从而增加了服务器的性能。另外,servlet还继承了Java编程语言的所有功能。例如,与所有标准Java类一样,servlet独立于平台,可跨不同的操作系统使用。同样,servlet还可以利用Java类一样,servlet独立于平台,可跨不同的操作系统使用。同样,ser