📜  Servlet 的替代品是什么?

📅  最后修改于: 2022-05-13 01:55:51.439000             🧑  作者: Mango

Servlet 的替代品有哪些?

先决条件 - Servlet 简介

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

1. 通用网关接口(CGI)

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

例子:当你填充形状并提交形状应用时,点击提交按钮,它会出现,这个级别的结果是CGI。

普通的 每次 Web 服务器收到 CGI 请求时都会创建一个新进程,因此会导致响应时间延迟。

2. 专有API

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

示例: Netscape 的 NSAPI、Microsoft 的 ISAPI 和 O'Reilly 的 WSAPI。

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

3. 活动服务器页面 (ASP)

Microsoft 的 ASP 是另一种支持服务器端编程的技术。只有 Microsoft 的 Internet Information Server (IIS) 支持这项不是免费的技术。它们处理简单的 HTML 页面,客户端(网络冲浪者)从服务器请求 Internet 页面。服务器只是将文件发送给客户端,因此页面会显示在客户端的浏览器上。 ASP 现在已经过时,取而代之的是 ASP.NET。 ASP.NET 可能是一种编译语言并依赖于.NET Framework ,而 ASP 严格来说是一种解释性语言。

4. 服务器端 JavaScript

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

示例:理想情况通常是 Node.JS。服务器端脚本的优点是高度自定义响应的能力支持用户的要求、访问权限或对数据存储的查询。