1. Nginx简介1.1 Nginx 概述
- NGINX是一个免费、开源、高性能、轻量级的HTTP和反向代理服务器,也是一个电子邮件(IMAP/POP3)代理服务器,其特点是占有内存少,并发能力强 。Nginx 因为它的稳定性、丰富的模块库、灵活的配置和较低的资源消耗而闻名。目前应该是几乎所有项目建设必备 。
- Nginx由内核和一系列模块组成,内核提供web服务的基本功能,如启用网络协议,创建运行环境,接收和分配客户端请求,处理模块之间的交互 。Nginx的各种功能和操作都由模块来实现 。Nginx的模块从结构上分为核心模块、基础模块和第三方模块 。核心模块: HTTP模块、EVENT模块和MAIL模块基础模块: HTTP Access模块、HTTP FastCGI模块、HTTP Proxy模块和HTTP Rewrite模块第三方模块: HTTP Upstream Request Hash模块、Notice模块和HTTP Access Key模块及用户自己开发的模块这样的设计使Nginx方便开发和扩展,也正因此才使得Nginx功能如此强大 。Nginx的模块默认编译进nginx中,如果需要增加或删除模块,需要重新编译Nginx,这一点不如Apache的动态加载模块方便 。如果有需要动态加载模块,可以使用由淘宝网发起的web服务器Tengine,在nginx的基础上增加了很多高级特性,完全兼容Nginx,已被国内很多网站采用 。
- Nginx有很多扩展版本
- 开源版 nginx.org
- 商业版 NGINX Plus
- 淘宝网发起的Web服务器 Tengine
- 基于Nginx和Lua的Web平台 OpenResty
- 应用层使用HTTP协议 。
- html文档格式 。
- 浏览器统一资源定位器(URL) 。
作为一名Java猿帅,肯定要理解下Nginx和Tomcat的区别了:
【Nginx通关攻略】Nginx、Apache和Tomcat
- Nginx—— 由俄罗斯程序员Igor Sysoev所开发的轻量级、高并发HTTP服务器;
- Apache HTTP Server Project,一个Apache基金会下的HTTP服务项目,和Nginx功能类似;
- Apache Tomcat,则是Apache基金会下的另外一个项目,是一个Application Server,更准确的说是一个servlet应用容器,与Apache HTTP Server和Nginx相比,Tomcat能够动态的生成资源并返回到客户端;
一个 HTTP Server 关心的是 HTTP 协议层面的传输和访问控制,所以在 Apache/Nginx 上你可以看到代理、负载均衡等功能 。客户端通过 HTTP Server 访问服务器上存储的资源(HTML 文件、图片文件等等) 。通过 CGI 技术,也可以将处理过的内容通过 HTTP Server 分发,但是一个 HTTP Server 始终只是把服务器上的文件如实的通过 HTTP 协议传输给客户端 。
而应用服务器,则是一个应用执行的容器 。它首先需要支持开发语言的运行(对于 Tomcat 来说,就是 Java),保证应用能够在应用服务器上正常运行 。其次,需要支持应用相关的规范,例如类库、安全方面的特性 。对于 Tomcat 来说,就是需要提供 JSP/Sevlet 运行需要的标准类库、Interface 等 。为了方便,应用服务器往往也会集成 HTTP Server 的功能,但是不如专业的 HTTP Server 那么强大,所以应用服务器往往是运行在 HTTP Server 的背后,执行应用,将动态的内容转化为静态的内容之后,通过 HTTP Server 分发到客户端 。
1.3 正向代理正向代理:如果把局域网外的 Internet 想象成一个巨大的资源库,则局域网中的客户端要访 问 Internet,则需要通过代理服务器来访问,这种代理服务就称为正向代理 。
正向代理“代理”的是客户端 。
比如在家办公期间,需要连公司的 VPN 办公,这个就是所谓的”正向代理“ 。还有我们访问 google也是 。
文章插图
1.4 反向代理 与 负载均衡反向代理正好与正向代理相反,反向代理是指以代理服务器来接收Internet上的连接请求,然后将请求转发到内部网络上的服务器,并将服务器上得到的结果返回给客户端,此时代理服务器对外表现就是一个服务器,客户端对代理是无感知的 。
反向代理“代理”的是服务端 。
再比如,你想本本分分的在“优酷”上看个“爱情片”,youku.com会把你的请求分发到存放片片的那台机器上,这个就是所谓的”反向代理“ 。
推荐阅读
- IIS、Apache、Tomcat、Nginx、CDN,它们之间有何区别?
- 开膛手杰克桌游攻略
- 最全神农架旅行攻略,再也不用担心被宰客,这份攻略真实用
- linux下计算网站PV量、UV量
- 常见应用部署 docker:docker部署nginx
- 冬天减肥攻略有哪些方法?
- 教你如何一键生成Nginx配置,让配置不在繁琐
- Nginx配置解析整理
- 顺德美食攻略
- 祛眼袋最全攻略,成因+方法+避雷