Servlet 有哪些替代方案?

原文:https://www . geeksforgeeks . org/servlet 的替代品是什么/

先决条件–Servlet 简介

servlet 是在支持 Java 的网络服务器或应用服务器上运行的 Java 程序。它们用于处理从网络服务器获得的请求,处理请求,产生响应,然后将响应发送回网络服务器。以下是servlet 的一些替代品:

1.公共网关接口

这是最典型的服务器端解决方案。CGI 应用程序是一个独立的程序,它从在线服务器接收请求并将其发送回网络服务器。CGI 脚本的用途是处理表单。这是一种允许网络浏览器通过互联网服务器提交表单和连接程序的技术。公共网关接口为数据从用户的请求传递到设备程序并返回给用户提供了一种平衡的方式。

示例:当您填充形状并提交形状应用时,单击提交按钮,它会显示,该级别的结果是什么是 CGI。

一个常见的问题是,每当网络服务器收到一个 CGI 请求时,就会创建一个新的进程,从而导致响应时间延迟。

2.专有应用编程接口

许多专有的 web 服务器内置了对服务器端编程的支持。这些也被称为非自由软件,或闭源软件,是指软件的发布者或另一个人保留 ASCII 文本文件的通常版权,但有时保留专利权的计算机软件。它是一个软件库接口,“至少特定于一个设备,或者更可能是特定制造商产品范围内的各种设备”。采用专有应用编程接口的动机通常是供应商锁定,或者因为标准应用编程接口不支持设备的功能。

举例:网景的 NSAPI,微软的 ISAPI,以及 O'Reilly 的 WSAPI。

缺点:这些大部分是用 C/C++开发的,因此可能包含内存泄漏和核心转储,从而导致网络服务器崩溃。

3.活动服务器页面

微软的 ASP 是另一种支持服务器端编程的技术。只有微软的互联网信息服务器(IIS)支持这项非免费技术。他们使用简单的 HTML 页面,客户端(网络冲浪者)从服务器请求一个互联网页面。服务器只是将文件发送给客户端,因此页面会显示在客户端的浏览器上。ASP 现在已经过时,被 ASP.NET 取代。ASP.NET 可能是一种编译语言,依赖于 。NET 框架 ,而 ASP 严格来说是一种解释语言。

4.服务器端 JavaScript

它是 servlets 的另一种选择。唯一已知的支持它的服务器是网景的企业和快速通道服务器。这将您与特定的供应商联系起来。服务器端 JavaScript 可以是运行在服务器本地资源上的 JavaScript 代码,它类似于 Java 或 C#,但语法是基于 JavaScript 的。

示例:这方面的一个理想通常是 Node.JS。服务器端脚本的优势在于高度定制响应的能力支持用户的需求、访问权限或对数据存储的查询。