您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Nginx 简介

1. 是什么?

关于 ,百科的介绍如下:

(engine x)是开源、高的 HTTP 和反向代理 Web 服务器,同时也提供了 IMAP/POP3/SMTP 服务”。

首先,对 Web 服务器做简要说明:

Web 服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,可以向浏览器等 Web 客户端提供文档,也可以放置网站,让全世界浏览。可以放置数据,让全世界下载。

常见的 Web 服务器有: Apache、、微软的 IIS 和 Tomcat。比如当我启动 服务后,服务监听服务器上的端口,当从外面访问这个 ip+ 端口 的地址时,我们能对应访问服务器上的某些,或者动态服务响应,对相应的 http 请求进行处理并返回某个结果。这样就是通过浏览器和 Web 服务器(也就是 )进行交互。

是由俄罗斯的工程师 Igor Sysoev 在 Rambler 集团任职系统时利用业余时间所开发高 web 服务,官方测试 能够支撑 5 万并发,并且 、内存等资源消耗却非常低,运行非常稳定,所以现在很多知名的公司都在使用 或者在此基础上进行了二次开发,淘宝、新浪、等。对于中小型企业而言,开源免费而又强大的 必然也是首选,后续我们将看到一组数据来说明 的应用之广泛。

2. 使用场景

的使用场景如下:

作为 Web 服务器能独立提供 Http 服务。另外,我们常常通过 作为静态资源服务器来访问服务器上的静态资源,比如对于最新热门的前后端分离架构,前端打好包后直接放到某个地址,在 配置后可以通过 来访问主机上的前端。

反向代理(Reverse Proxy)方式是指以代理服务器来接受 Internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 Internet 上请求连接的客户端,此时代理服务器对外就表现为反向代理服务器。这样的好处是,将不暴露内部的服务地址,只统一使用公共出口,通过 URI 匹配转发到不同的内部服务处理请求。

均衡也是 的高频使用场景,对于下游存在的多个相同服务,可以将请求采用某种策略(、轮询、权重)发到相应的服务处理。这样由于多个相同服务的存在,可以实现高可用,在服务不可用时, 会发现并将其剔出服务集群,将请求转发给正常的服务进行处理。

基于第三方, 可以完成各种各样复杂的,全方位满足程序员的想法。比如在 中引入 lua 模块,可以实现对 Http 请求更细粒度的限制,限速、限流、校验认证等等。后续,在 上发展出来的 OpenResty 已经应用到了微服务网关方向。

3. Web 服务器的市场情况

每月公布的全球 Web 服务器调查报告“Web Server Survey”是当前人们了解全球网站以及服务器市场分额情况的主要参考依据,2019 年 12 月份的报告目前已经发布,我们来一睹为快。


联系我
置顶