Nginx教程

Nginx概述

本文主要是介绍Nginx概述,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Nginx

概述

Nginx是一款由俄罗斯程序设计师开发的高性能Web反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。

特点是占有内存小并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现呢较好。

中国大陆使用nginx网站的用户有:百度、京东、淘宝、新浪、网易、腾讯等。

Nginx转为性能优化而开发,性能是服务器最重要的考量,实现上非常注重效率,能经受高负载的考验,根据报告称支持高达50000个并发连接数。在高并发放情况下,Nginx是Apache服务器不错的替代品。

Nginx不仅能做反向代理,实现负载均衡;还能做正向代理来进行上网。

什么是代理服务器

所谓代理服务器就是位于发起请求的客户端与原始服务器之间的一台跳板服务器,正向代理可以隐藏客户端,反向代理可以隐藏原始服务器。

正向代理

用户知道目标服务器地址,但由于网络限制等原因,无法直接访问。这时需要先连接代理服务器,然后再由代理服务器访问目标服务器。

image-20210718182244547

反向代理

反向代理对用户则是不可知的,比如我们访问百度网站,百度的代理服务器对外的域名为www.baidu.com,具体内部的服务器节点我们不知道,现实中我们通过访问百度的代理服务器后,代理服务器给我们转发请求到他们的众多服务器节点中的一个,给我们进行搜索后返回。

image-20210718182638945

负载均衡

客户端发送多个请求到服务器,服务器处理请求,有些可能要访问数据库,服务器处理完毕后再将结果返回客户端。

这种架构模式单一,适合并发请求少的情况。当遇到并发量大的时候,应用服务器集群,增加服务器数量,然后将原来的请求分发到多个服务器上,将负载分发到多个服务器上。

image-20210718183200273

负载均衡的调度算法:

  1. 轮询:按时间顺序逐一分配到不同的后端服务器。
  2. 加权轮询:可在配置的server后加上weight=number,number值越高,分配到的概率越大。
  3. ip_hash:每个请求按访问IP的hash分配,这样来自同一IP的请求固定访问一个后台服务器。
  4. least_hash:最少链接数,哪台服务器连接数少就给那台服务器发送。

动静分离

Nginx是一个静态资源服务器,为了加快网站的解析速度,可以把动态页面和静态页面由不同的服务器解析,减少服务器压力,加快解析速度。将Java后端程序部署在独立的服务器上,nginx代理访问后端服务。

实现动态请求与静态请求分离,实现资源分类

image-20210718183901788

这篇关于Nginx概述的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!