您的位置:首页 > 运维架构 > Nginx

Nginx初识

2017-11-26 22:26 363 查看


单机tomcat  优点 开发简单 部署简单
    缺点 单点故障 出错不可访问 

    容量 2、300 经过优化 可能达到500
 

多tomcat    单点故障排除 容量提升 

             应用服务器 全部暴露在外网 入口不集中不安全 

              一部分访问到故障的tomcat

======================================================================



负载均衡 

硬件实现   F5  非常快 可靠性高 并发量大  太贵 成本高 不方便

软件实现   

linux下的LVS 基于linux系统IP层面的负载均衡 可靠性高 简单易用 并发量大

              不能动静分离 动:改变数据库 静:静态资源的加载       

apache httpserver  可以动静分离  效率不如Nginx

Nginx              可以动静分离  静态访问跳过请求分发/负载均衡

   

      正向代理   用户藏起来 找代理访问

      反向代理   服务器藏起来  

反向代理 tomcat里的服务器Ip藏起来 用的是Nginx的虚拟Ip

压力测试 主要有两个软件

apache-jemeter


准备多个tomcat 修改server.conf 端口

打开nginx.conf  添加 upstream test-service {  #服务器集群名字,此处叫做 test-service
server  localhost:8080;#服务器配置
server  localhost:8090;
}

 
location / {

            root   html;

            index  index.html index.htm;
proxy_pass http://test-service; //这一行是自己添加的 将要转发的写上 也就是上面的集群名字

        }

RoundRobin轮询  Nginx默认用的是轮询算法 保证公平
可选==》源地址hash(保证同一个IP请求落在同一个机器上)
可选==》加权  权重高的(1~4)多放几个IP

负载均衡带来的session问题

解决方法  

1. 应用服务器session同步 应用服务器本身能力有限 再加session同步 带来网络开销 (基本不用)

2. nginx负载均衡算法 设置为ip hash 请求定位到同一台应用服务器 不进行切换 解决了session问题 但是不容灾了 会有单点故障 

   在upstream里 添加ip_hash; 

3. session外置 彻底解决问题 强烈推荐 单点登录

动静分离

# 将所有静态资源都有nginx处理 存放目录为html

location ~\.(gif|jsp|jpeg|png|bmp|swf)${
root  html;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  nginx tomcat