服务器
服务器
服务器类型
服务器根据静态和动态加载数据,分为 web 服务器和应用服务器两种。
web 服务器
提供代理服务,负责接收 HTTP 请求并返回 HTTP 响应。
web 服务器可以访问本地磁盘上所有的资源文件,但不能对 HTTP 请求/响应进行动态加载! web 服务器接收的 HTTP 资源请求路径必须是固定且明确的,如指向服务器根路径下的 index.html 。web 服务器数据会直接把 index.html 的数据装入 HTTP 响应返回,而不能对其进行修改。
应用服务器
对远程请求进行逻辑处理,读取 HTTP 请求参数、将后台数据动态加载到页面中。
应用服务器只能访问部署在服务器中的项目资源文件,用来实现对 HTTP 请求/响应的动态加载。 web 服务器接收到路径不固定的 HTTP 请求后(不指向某个具体的文件),应用服务器可以对其进行解析并进行相应的逻辑处理。应用服务器往往在读取后端数据后通过 JSP 等技术对页面实现动态修改,再交给 web 服务器将数据装入 HTTP 响应返回。
通过 Java 语言实现动态加载的服务器,底层对数据库数据的调用都是通过 servlet 技术实现,因此也叫做 servlet 引擎。
常用服务器
Apache
最经典的 web 服务器,用于接收 HTTP 请求并返回 HTTP 响应。
由于 web 服务器只能返回静态数据,如果想要根据后端语言对页面进行动态修改,需要安装 PHP/Java 等语言的 Apache 插件。
Tomcat
目前最常使用的 Java web 应用服务器,支持 Java 语言在后端对页面进行动态加载。
免费易用、生态完善。且内置了 Apache 服务器,可以直接部署并使用。
Jetty
轻量级的 Java web 应用服务器,适合处理长连接。常用于移动端 APP 开发应用服务器。
基于 Netty 技术自研
满足对性能、实时性、并发的特殊需求。如实时聊天服务器、视频云平台服务器。
Nginx
性能优异的 web 服务器。常用于和其它应用服务器协同,负责缓存静态文件、负载均衡和反向代理,缓解应用服务器的负载压力。
Tomcat 服务器
基本介绍
Tomcat 是最著名的 java web 应用服务器,支持用 java 语言对返回页面进行动态处理。但现在一般使用前后端分离的方式,只返回数据。
Spring Boot 内置 Tomcat 服务器,直接运行启动器即可。
常用服务器
一般在 web 项目开发 中,apache+tomcat+nginx 联合使用,访问静态资源时用 apache 解析,访问动态资源时用 tomcat 解析,nginx 作为反向代理服务器,同时支持高并发。
apache 是最常见的 web 服务器。不能动态处理页面!如果想脱离应用服务器直接使用,必须通过安装 php 插件等其他方式来修改页面。
nginx 是 Apache 提供的 web 服务器,nginx 是一款高性能、轻量级的 web 服务器和反向代理服务器以及邮件代理服务器。支持高并发,并发量 50000 。nginx 不能解析动态的 jsp 页面。
版权声明: 本文为 InfoQ 作者【武师叔】的原创文章。
原文链接:【http://xie.infoq.cn/article/0fac2e4893556208889e329b0】。文章转载请联系作者。
评论