前端也要知道的 Nginx 那些事

Posted 开课吧前端团队

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了前端也要知道的 Nginx 那些事相关的知识,希望对你有一定的参考价值。





前端也要知道的 Nginx 那些事


随着前端变革,nginx也成为了前端开发工程师必不可少应该具备的一项技能了,那nginx到底起的是什么作用?

其实Nginx一直跟我们息息相关,它既可以作为 Web 服务器,也可以作为负载均衡服务器,具备高性能、高并发连接等。


前端也要知道的 Nginx 那些事

负载均衡


当一个应用单位时间内访问量激增,服务器的带宽及性能受到影响,影响大到自身承受能力时,服务器就会宕机奔溃。

为了防止这种现象发生,以及实现更好的用户体验,我们可以通过配置Nginx负载均衡的方式来分担服务器压力。


当有一台服务器宕机时,负载均衡器就分配其他的服务器给用户,极大的增加的网站的稳定性。

当用户访问web时候,首先访问到的是负载均衡器,再通过负载均衡器将请求转发给后台服务器。


负载均衡的几种常用方式


  • 轮询(默认)


// nginx.configupstream backserver { server 192.168.0.1; server 192.168.0.2;}


  • 权重weight


指定不同ip的权重,权重与访问比成正相关,权重越高,访问越大,适用于不同性能的机器。


// nginx.configupstream backserver { server 192.168.0.1 weight=2; server 192.168.0.2 weight=8;}



  • 响应时间来分配


公平竞争,谁相应快,谁处理,不过这种方式需要依赖到第三方插件nginx-upstream-fair,需要先安装。


// nginx.configupstream backserver { server 192.168.0.1; server 192.168.0.2; fair;}server { listen 80; server_name localhost;  location / { proxy_pass http://backserver; }}


健康检查


Nginx自带ngx_http_upstream_module (健康检测模块)本质上服务器心跳的检查,通过定期轮询向集群里的服务器发送健康检查请求,来检查集群中是否有服务器处于异常状态。


如果检测出其中某台服务器异常,那么在通过客户端请求nginx反向代理进来的都不会被发送到该服务器上(直至下次轮训健康检查正常)


基本例子如下

以上是关于前端也要知道的 Nginx 那些事的主要内容,如果未能解决你的问题,请参考以下文章

前端吐槽的后端接口那些事

前端程序员不可不知的 —— 浏览器的那些事(全都是干货!!!)

前端程序员不可不知的 —— 浏览器的那些事(全都是干货!!!)

React.js入门必须知道的那些事

前端异步编程的那些事

React.js入门必须知道的那些事