nginx一些细节知识点补充
1.upstream 配置代理
- upstream local_tomcat {
- server localhost:8080;
- }
- server{
- location / {
- proxy_pass http://local_tomcat;
- }
- #......其他省略
- }
在server外添加了一个upstream,而直接在proxy_pass里面直接用http://+upstream的名称来使用。
还是直接来http://localhost,还是和第一个一样的效果,所有链接都没问题,说明我们配置正确。
upstream中的server元素必须要注意,不能加http://,但proxy_pass中必须加
2.upstream 配置多台服务器
- upstream local_tomcat {
- server localhost:8080;
- server localhost:9999;
- }
防止第一台服务器出现挂机。
3.upstream配置某台服务器的权值
- upstream local_tomcat {
- server localhost:8080 weight=1;
- server localhost:9999 weight=5;
- }
4.nginx的重要功能
动/静态资源分离、负载均衡
5.动/静态资源分离
nginx支持正则表达式以区分静态资源或者动态资源,
其中动态资源可以进一步转发给后端的proxy server,
而静态资源则可以在nginx层面使用本地缓存策略或者重定向(类CDN)到其他nginx上
6.负载均衡
对于动态资源而言,如果有多个proxy server,那么nginx将会根据一定的算法选择合适的server,并转发请求,最终将客户端request相对均衡的分发给多个server。
7.负载均衡算法
“负载均衡”算法需要在upstream区块的首行声明。
1)round-robin:轮询,request将会依次有序的分发给web server。one by one!默认使用此算法。
2)least-connected:最小连接数,请求将会被分发给当前链接数最小的server。配置名“least_conn”。
3)ip-hash:根据请求的客户端IP作为hashing key,来判定选择哪个server。配置名“ip_hash”。
能够影响负载均衡策略的还有一个重要的参数:权重
8.健康检测
- upstream backend {
- server 192.168.1.110 weight=3 max_fails=3 fail_timeout=10s;
- server 192.168.1.120;
- server 192.168.1.130;
- }
对于负载均衡是必须的,这是提供可用性、“故障迁移”的必要手段。比如当某个server失效,请求未能正常处理,那么我们应该将分发给那些“正常”的server,并将故障的server从列表中移除,直到它恢复,以避免后续更多的请求处理失败。nginx当与一个server建立链接失败后,会在“fail_timeout”时间内最多尝试“max_fails”次,如果仍为失败,则将次server标记为“failed”,并从服务列表中移除。默认“max_fails”为1,如果“max_fails”为0,则表示关闭“健康检测”;“fail_timeout”(默认位10s)表示检测多久后被标记为“failed”,nginx会以优雅的方式检测那些失效的server,如果它们再次上线,则将它们标记为“alive”,即可继续提供服务。
nginx一些细节知识点补充的更多相关文章
- Django学习笔记(19)——BBS+Blog项目开发(3)细节知识点补充
本文将BBS+Blog项目开发中所需要的细节知识点进行补充,其中内容包括KindEditor编辑器的使用,BeautifulSoup 模块及其防XSS攻击,Django中admin管理工具的使用,me ...
- swagger知识点补充
1. swagger知识点补充 1.1. 概述 在swagger的使用过程中,除了网上常见的例子,还会有很多细节上的东西需要注意和改写,这里我列几点我使用过程中遇到的问题和改进方式 1.2. 知识点 ...
- nginx几个知识点汇总
WHY? 为什么用Nginx而不用LVS? 7点理由足以说明一切:1 .高并发连接: 官方测试能够支撑 5 万并发连接,在实际生产环境中跑到 2 - 3 万并发连接数.?2 .内存消耗少: 在 3 万 ...
- 11_Servlet的一些细节知识点
[Servlet的细节知识点1-----一个Servlet映射到多个URL] 同一个Servlet可以被映射到多个URL上,即多个<servlet-mapping>元素的<servl ...
- 你所不了解的javascript操作DOM的细节知识点(一)
你所不了解的javascript操作DOM的细节知识点(一) 一:Node类型 DOM1级定义了一个Node接口,该接口是由DOM中的所有节点类型实现.每个节点都有一个nodeType属性,用于表明节 ...
- set集合,深浅拷⻉以及部分知识点补充
set集合,深浅拷⻉以及部分知识点补充内容:1. 基础数据类型补充2. set集合3. 深浅拷⻉主要内容: ⼀. 基础数据类型补充⾸先关于int和str在之前的学习中已经讲了80%以上了. 所以剩下的 ...
- Django 知识点补充
Django 知识点补充 1 Django如何在Model保存前做一定的固定操作,比如写一条日志 (1)利用Django的Model的Signal Dispatcher, 通过django.db.mo ...
- 从零开始的全栈工程师——html篇1.8(知识点补充与浏览器兼容性)
知识点补充 一.浏览器的兼容问题(关于浏览器的兼容问题 有很多大佬已经解释的很清楚了 这个得自己百度去多花点时间去了解 这里咱们只说一下前面的漏点) 浏览器兼容性问题又被称为网页兼容性或网站兼容性问题 ...
- 前端开发概述+JS基础细节知识点
一 前端开发概述 html页面:html css javascript 拿到UI设计图纸:切图-->html+css静态布局-->用JS写一写动态效果-->ajax和后台进行交互,把 ...
随机推荐
- centos7.2 rabbitmq3.6.2源码部署
1.安装所有依赖包yum install -y gcc ncurses ncurses-base ncurses-devel ncurses-libs ncurses-static ncurses-t ...
- Linux装机利器Cobbler安装配置
Linux装机利器Cobbler安装配置 2011-05-27 15:31:05 分类: LINUX 一.安装环境 centos 5.4 关掉iptables 关掉 selinux selinux ...
- Overfitting & Regularization
Overfitting & Regularization The Problem of overfitting A common issue in machine learning or ma ...
- idea注册码激活防和谐
1.到网站 http://idea.lanyus.com/ 获取注册码: 2.修改hosts文件,位于C:\Windows\System32\drivers\etc,添加一行,win10推荐使用not ...
- Python 豆瓣顶帖
由于在豆瓣发了个租房帖子,发现很快就被其他的帖子淹没,但是手动顶帖实在太累,
- 腾讯高级设计师谈微信的旧容与新妆,Android Design是大势所趋
编者按:本篇投稿选自腾讯大讲堂(更多腾讯产品技术文章,可以关注“腾讯大讲堂”微信公众账号),由腾讯研发管理部高级设计师Vertu撰写,他以产品设计师的视角,对比解读了微信的旧容与新妆,也讲了Andro ...
- 【AtCoder Grand Contest 007E】Shik and Travel [Dfs][二分答案]
Shik and Travel Time Limit: 50 Sec Memory Limit: 512 MB Description 给定一棵n个点的树,保证一个点出度为2/0. 遍历一遍,要求每 ...
- 让页面无刷新的AJAX、ASP.NET核心知识(9)
AJAX简介 1.如果没有AJAX 普通的ASP.Net每次执行服务端方法的时候都要刷新当前页面,如果没有ajax,在youku看视频的过程中,就没法提交评论,页面会刷新,视频会被打断. 2.说说AJ ...
- JS 数组 foreach 和 map
本文地址:http://www.cnblogs.com/veinyin/p/8794677.html foreach 和 map 都是数组的迭代方法,对数组的每一项执行给定函数,不会改变原数组. 两 ...
- Indepence Mode 备份 weblogic
一般不在administation server 停止这个模式 管理服务器挂了,不会影响其他服务器的运行 备份一个domain copy 一个 /bin 把启动的脚本做一个修改 里面的doma ...