我知道的nginx配置
1.nginx配置文件
2.配置访问域名
#京淘商品管理系统
server {
listen 80;
server_name manage.jt.com;
location / {
proxy_pass http://localhost:8091;
}
}
- 负载均衡策略
(1) 轮询
#定义集群的配置
upstream jt {
server localhost:8091;
server localhost:8092;
server localhost:8093;
}
(2) 权重
说明:根据服务器的性能,让高性能的服务处理更多的请求.
配置:
#定义集群的配置
upstream jt {
server localhost:8091 weight=6;
server localhost:8092 weight=3;
server localhost:8093 weight=1;
}
(3) IP_HASH
问题描述:
因为采用集群的部署,会有多台tomcat一齐提供服务.但是有些模块需要权限校验.必须实现Session共享.
问题:如何保证Session共享呢??
解决方案:
- URL重写技术
实现思路:通过拦截器拦截全部的请求,之后动态拼接url?SessionId
特点:效率低
功能:解决Cookie禁用问题.
- IP_HASH技术
说明:将用户的IP动态的绑定到特定的服务器中.之后用户的全部的请求都访问特定的服务器.
注意:
如果使用IP_hash那么轮询和权重则不生效
用法:
#定义集群的配置
upstream jt {
ip_hash;
server localhost:8091 weight=6;
server localhost:8092 weight=3;
server localhost:8093 weight=1;
}
(4)实现nginx上下线
问题描述:
当后台的tomcat服务器,如果宕机,那么如果没有人修改Nginx的配置文件.则会导致Nginx的请求任然会发往宕机的机器.这时只能等待用户连接超时.
方案A:
如果发现宕机的机器,则认为的修改配置文件,将该服务器进行下线处理.
该方案的用途:一般上线部署时使用.
方案B:Nginx健康检测(心跳检测)
说明:Nginx内部有健康检测的机制.如果检测到服务器不能正常连接.那么会在指定的周期内,不会再将用户的请求发往该机器.
如果运维人员将服务器修复后,Nginx的健康检测,查询到该机器可以正常提供服务后,则在下一个周期内.使用该机器.
如果当用户访问恰好访问到故障机.那么在Nginx超时时间过后,访问下一台服务器.为用户提供服务.
(5)健康检测机制
参数介绍:
max_fails=1 Nginx健康检测的失败的次数
fail_timeout=60s 表示在60秒内 不会再将请求发往故障机. 时间不宜过小 否则Nginx内部负载太高了.
proxy_connect_timeout 1; 请求超时时间 1秒
proxy_read_timeout 1; 读取资源的超时
proxy_send_timeout 1; 发送数据的超时
#定义集群的配置
upstream jt {
#ip_hash;
server localhost:8091 max_fails=1 fail_timeout=60s;
server localhost:8092 max_fails=1 fail_timeout=60s;
server localhost:8093 max_fails=1 fail_timeout=60s;
}
#京淘商品管理系统
server {
listen 80;
server_name manage.jt.com;
location / {
proxy_pass http://jt;
proxy_connect_timeout 1;
proxy_read_timeout 1;
proxy_send_timeout 1;
}
}
我知道的nginx配置的更多相关文章
- 你需要知道的Nginx配置二三事
做服务端开发的,工作中难免会遇到处理Nginx配置相关问题.在配置Nginx时,我一直本着“照葫芦画瓢”的原则,复制已有的配置代码,自己修修改改然后完成配置需求,当有人问起Nginx相关问题时,其实仍 ...
- 隔壁小孩都要知道的Drupal配置
i春秋作家:Arizona 原文来自:隔壁小孩都要知道的Drupal配置 隔壁小孩都要知道的Drupal配置 Drupal是一个开源的PHP内容管理系统,具有相当复杂的架构.它还具有强大的安全模型.感 ...
- 前端必须知道的 Nginx 知识
Nginx一直跟我们息息相关,它既可以作为Web 服务器,也可以作为负载均衡服务器,具备高性能.高并发连接等. 1.负载均衡 当一个应用单位时间内访问量激增,服务器的带宽及性能受到影响, 影响大到自身 ...
- 程序员必须要知道的Hadoop的一些事实
程序员必须要知道的Hadoop的一些事实.现如今,Apache Hadoop已经无人不知无人不晓.当年雅虎搜索工程师Doug Cutting开发出这个用以创建分布式计算机环境的开源软...... 1: ...
- 【转载】在IT界取得成功应该知道的10件事
在IT界取得成功应该知道的10件事 2011-08-11 13:31:30 分类: 项目管理 导读:前面大多数文章都是Jack Wallen写的,这是他的新作,看来要成为NB程序员还要不停的自我总结 ...
- Nginx配置proxy_pass
nginx配置proxy_pass,需要注意转发的路径配置 1.location /test/ { proxy_pass http://t6:8300; } 2.location /test/ { p ...
- 关于Solr搜索标点与符号的中文分词你必须知道的(mmseg源码改造)
关于Solr搜索标点与符号的中文分词你必须知道的(mmseg源码改造) 摘要:在中文搜索中的标点.符号往往也是有语义的,比如我们要搜索“C++”或是“C#”,我们不希望搜索出来的全是“C”吧?那样对程 ...
- [转载]你需要知道的 16 个 Linux 服务器监控命令
转载自: 你需要知道的 16 个 Linux 服务器监控命令 如果你想知道你的服务器正在做干什么,你就需要了解一些基本的命令,一旦你精通了这些命令,那你就是一个 专业的 Linux 系统管理员. 有些 ...
- 十件你需要知道的事,关于openstack-trove(翻译)
开源数据库即服务OpenStack Trove应该知道的10件事情 作者:Ken Rugg,Tesora首席执行官 Ken Rugg是Tesora的创始人,CEO和董事会成员. Ken的大部分职业都是 ...
随机推荐
- matlab-可视化图像阈值选择GUI工具
话不多说,先看图,这是导入一张图后运行的效果. 在此函数中,左图是灰度图加上colorBar后的彩色效果图,右图是二值化后的图,下面是可调节阈值的灰度直方图. 左上角的按钮是回归初始状态,右上角的按钮 ...
- PHP 调试打印输出变量
var_dump ($row); echo "hello"; echo "\n"; print_r ($arr); php 数组 对象 $arr = json_ ...
- shell多个脚本怎么并发执行
#!bin/bash PRONUM=10 #进程个数 tmpfile="$$.fifo" #临时生成管道文件 mkfifo $tm ...
- java List<Map<String,Object>
xml <select id="selectShopList" resultType="java.util.HashMap"> SELECT p.P ...
- Echarts报错 Can't read property 'getWidth' of null
统计图报错: 这里的报错与echarts无关,与zrender有关,zrender是echarts依赖的canvas绘图库 你不需要了解zrender,这个问题是你代码出了错 谨记::代码的错
- js代码技巧
1.js 中不常用的处理方法 //取整 parseInt(a,10); //Before Math.floor(a); //Before a>>0; //Before ~~a; //Aft ...
- git克隆远程仓库的时候断电了,使用git-fetch断点续传
今天下载tensorflow serving 模型,但是因为主机电源线太长了,不知是我自己搞的还是同事,断电了都, 网速捉急,下载了挺长时间的,一看,git clone 到中途竟然断电,不过查看,还好 ...
- VideoView 监听视频格式不支持时的错误。
视频播放格式不支持的处理https://www.cnblogs.com/ygj0930/p/7737209.html 不处理的情况下,默认会有弹框提示:不支持该视频格式. mVideoView.set ...
- JAVA获取系统信息以及系统时间
在做测试的时候,经常需要获取系统信息,并且用获取到的系统时间给生成的报告取名字. 以下代码实在TestNG展示的,没有Test NG的话需要些一个main方法. import java.net.Ine ...
- javascript中的类型检测
最常见的是使用 typeof 来判断数据类型 可以区分4种基本类型,即 “number”,”string”,”undefined”,”boolean”,第5种基本类型null类型返回值为object( ...