1.nginx配置文件

2.配置访问域名

#京淘商品管理系统

server {

listen 80;

server_name manage.jt.com;

location / {

proxy_pass http://localhost:8091;

}

}

  1. 负载均衡策略

(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共享呢??

解决方案:

  1. URL重写技术

实现思路:通过拦截器拦截全部的请求,之后动态拼接url?SessionId

特点:效率低

功能:解决Cookie禁用问题.

  1. 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配置的更多相关文章

  1. 你需要知道的Nginx配置二三事

    做服务端开发的,工作中难免会遇到处理Nginx配置相关问题.在配置Nginx时,我一直本着“照葫芦画瓢”的原则,复制已有的配置代码,自己修修改改然后完成配置需求,当有人问起Nginx相关问题时,其实仍 ...

  2. 隔壁小孩都要知道的Drupal配置

    i春秋作家:Arizona 原文来自:隔壁小孩都要知道的Drupal配置 隔壁小孩都要知道的Drupal配置 Drupal是一个开源的PHP内容管理系统,具有相当复杂的架构.它还具有强大的安全模型.感 ...

  3. 前端必须知道的 Nginx 知识

    Nginx一直跟我们息息相关,它既可以作为Web 服务器,也可以作为负载均衡服务器,具备高性能.高并发连接等. 1.负载均衡 当一个应用单位时间内访问量激增,服务器的带宽及性能受到影响, 影响大到自身 ...

  4. 程序员必须要知道的Hadoop的一些事实

    程序员必须要知道的Hadoop的一些事实.现如今,Apache Hadoop已经无人不知无人不晓.当年雅虎搜索工程师Doug Cutting开发出这个用以创建分布式计算机环境的开源软...... 1: ...

  5. 【转载】在IT界取得成功应该知道的10件事

     在IT界取得成功应该知道的10件事 2011-08-11 13:31:30 分类: 项目管理 导读:前面大多数文章都是Jack Wallen写的,这是他的新作,看来要成为NB程序员还要不停的自我总结 ...

  6. Nginx配置proxy_pass

    nginx配置proxy_pass,需要注意转发的路径配置 1.location /test/ { proxy_pass http://t6:8300; } 2.location /test/ { p ...

  7. 关于Solr搜索标点与符号的中文分词你必须知道的(mmseg源码改造)

    关于Solr搜索标点与符号的中文分词你必须知道的(mmseg源码改造) 摘要:在中文搜索中的标点.符号往往也是有语义的,比如我们要搜索“C++”或是“C#”,我们不希望搜索出来的全是“C”吧?那样对程 ...

  8. [转载]你需要知道的 16 个 Linux 服务器监控命令

    转载自: 你需要知道的 16 个 Linux 服务器监控命令 如果你想知道你的服务器正在做干什么,你就需要了解一些基本的命令,一旦你精通了这些命令,那你就是一个 专业的 Linux 系统管理员. 有些 ...

  9. 十件你需要知道的事,关于openstack-trove(翻译)

    开源数据库即服务OpenStack Trove应该知道的10件事情 作者:Ken Rugg,Tesora首席执行官 Ken Rugg是Tesora的创始人,CEO和董事会成员. Ken的大部分职业都是 ...

随机推荐

  1. linux redis 启动 overcommit_memory

    Redis在启动时不成功, 查看日志发现如下警告: WARNING overcommit_memory is set to 0! Background save may fail under low ...

  2. ATS配置自定义日志

    修改records.config,开启日志自定义功能 更改日志目录,默认日志存放在/var/log/trafficserver: CONFIG proxy.config.log.logfile_dir ...

  3. leetcode2

    /** * Definition for singly-linked list. * public class ListNode { * public int val; * public ListNo ...

  4. leetcode33

    class Solution { public: int search(vector<int>& nums, int target) { //这个题是给一个排序数组,但是数组里面内 ...

  5. python爬虫之解析库Beautiful Soup

    为何要用Beautiful Soup Beautiful Soup是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式, 是一个 ...

  6. Mybatis Generator 生成的mapper只有insert方法

    一般有两种情况 第一种是配置问题可以参考博客 http://blog.csdn.net/angel_xiaa/article/details/52474022 第二种是mysql-connector- ...

  7. [PHP]误读支付宝接口可能引发的乌龙

    ------------------------------------------------------------------------------------ 之所以发现这个坑,源起项目中的 ...

  8. HTML前期学习总结

    一.基本结构<!DOCTYPE html> //设置字符编码集格式<html> //<head> //网页头部 <title></title> ...

  9. CheckBox获取一组及全选

    获取一组CheckBox: jQuery: $(function () { $("input[name=names]").click(function () { //获得所有的na ...

  10. SSM商城项目(五)

    1.   学习计划 1.前台系统搭建 2.商城首页展示 3.Cms系统的实现 a)         内容分类管理 b)         内容管理 4.前台内容动态展示 2.   商城首页展示 2.1. ...