nginx负载
一、 Nginx反向代理与负载均衡概念简介
• 严格地说,Nginx仅仅是作为Nginx Proxy反向代理使用的,因为这个反向代理功能表现的效果是负载均衡集群的效果,所以本文称之为Nginx负载均衡。那么,反向代理和负载均衡有什么区别呢?
• 普通负载均衡软件,例如大名鼎鼎的LVS,其实功能只是对请求数据包的转发(也可能会改写数据包),传递,其中DR模式明显的特征是从负载均衡下面的节点服务器来看,接收到的请求还是来自访问负载均衡器的客户端的真实用户,而反向代理就不一样了,反向代理接收访问用户的请求后,会代理用户重新发起请求代理下的节点服务器,最后把数据返回给客户端用户,在节点服务器看来,访问的节点服务器的客户端用户就是反向代理服务器了,而非真实的网站访问用户。
• 一句话,LVS等的负载均衡是转发用户请求的数据包,而Nginx反向代理是接收用户的请求然后重新发起请求去请求其后面的节点。
- nginx反向代理负载均衡与LVS的区别
两者最本质的区别就是LVS等的负载均衡是转发用户请求的数据包,而Nginx是通过反向代理实现负载均衡的,是接收用户的请求然后重新发起请求去请求其后面的节点。
其次,nginx工作在OSI网络模型的第7层,所以它可以针对http协议本身来做分流策略,比如针对域名、URI等。lvs工作在网络的第四层,所以lvs并不具备nginx的这些功能,但是lvs可以支持极大的并发,工作效率明显高于nginx反向代理。
lvs数据返回时跳过lvs,即LVS :单向的(End user --->LVS---> tomcat ...> end user ) 而Ngnix 有个来回(End user --->Ngnix---> tomcat--->Ngnix ...> end user)
二、Nginx反向代理负载均衡环境准备
1.1环境部署
HOSTNAME IP 说明
lb01 192.168.0.221 Nginx主负载均衡器
lb02 192.168.0.222 Nginx副负载均衡器
web01 192.168.0.223 Web01服务器
web02 192.168.0.224 Web02服务器
1.2安装Nginx
# yum -y install openssl openssl-devel pcre pcre-devel 安装依赖软件包命令集合
# tar xf nginx-1.10.2.tar.gz -C /usr/src/ 提前下载好软件
# cd /usr/src/nginx-1.10.2/
# useradd -M -s /sbin/nologin nginx
# ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module && make && make install 预配置、编译、安装
# ln -s /usr/local/nginx/sbin/* /usr/local/sbin/ 做软连接
1.3 配置web服务器
(web01 web02 配置相同)
###这里故意将www虚拟主机放在下面,便于用后面的参数配置测试效果
配置完成后检查语法,并启动Nginx服务
# /usr/local/nginx/sbin/nginx
1.4 创建网页目录
#cd /usr/local/nginx/
#mkdir ./html/mail
#touch ./html/mail/bbs.html
#touch ./html/mail/yunjisuan.html
#echo "web1 i am bbs " > ./html/mail/bbs.html
#echo "web1 i am www" > ./html/mail/yunjisuan.html
1.5 Nginx 反向代理配置
# vim /usr/local/nginx/conf/nginx.conf
检查语法并重启
#/usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
#/usr/local/nginx/sbin/nginx -s reload
1.6 测试
在宿主计添加hosts映射
浏览器访问http://www.yunjisuan.com
nginx负载的更多相关文章
- 对比Haproxy和Nginx负载均衡效果
为了对比Hproxy和Nginx负载均衡的效果,分别在测试机上(以下实验都是在单机上测试的,即负载机器和后端机器都在一台机器上)做了这两个负载均衡环境,并各自抓包分析.下面说下这两种负载均衡环境下抓包 ...
- nginx负载均衡集群
nginx负载均衡集群 0.前言:nginx 负载均衡,属于网络7层模型中的应用层,说白了就是一个代理,要用 upstrem 模块实现,代理则用proxy模块 1.可以针对域名做转发,lvs只能针对 ...
- 手把手教你玩转nginx负载均衡(二)----安装虚拟机操作系统
引言 在上一篇,我们组装好了虚拟机的硬件部分,那么现在我们就要把操作系统装上了,既然是服务器,那么安装linux操作系统是个比较好的选择,如果你喜欢的话,安装windows也是没有任何问题的 我这里选 ...
- nginx负载均衡基于ip_hash的session粘帖
nginx负载均衡基于ip_hash的session粘帖 nginx可以根据客户端IP进行负载均衡,在upstream里设置ip_hash,就可以针对同一个C类地址段中的客户端选择同一个后端服务器,除 ...
- Net分布式系统之二:CentOS系统搭建Nginx负载均衡
一.关于CentOS系统介绍 CentOS(Community Enterprise Operating System,中文意思是:社区企业操作系统)是Linux发行版之一,它是来自于Red Hat ...
- Net分布式系统之三:Keepalived+LVS+Nginx负载均衡之高可用
上一篇写了nginx负载均衡,此篇实现高可用(HA).系统整体设计是采用Nginx做负载均衡,若出现Nginx单机故障,则导致整个系统无法正常运行.针对系统架构设计的高可用要求,我们需要解决Nginx ...
- 配置nginx负载均衡
配置nginx负载均衡 执行命令:vi /usr/local/nginx/sbin/nginx/conf/nginx.conf 修改为: worker_processes 2; events { ...
- nginx负载下站点错误响应会导致其他节点重复响应问题的解决过程
目录 前言 问题来了 问题又来了 问题分析 困惑 转机 后续 前言: 这是我上周工作过程中的一次解决问题的过程.解决的是nginx负载下站点错误响应导致其他节点重复响应. 我在整理这个记叙文时,在给这 ...
- 烂泥:nginx负载均衡
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 今天我们来学习下有关nginx的负载均衡配置.nginx的负载均衡是通过nginx的upstream模块和proxy_pass反向代理来实现的. 说明: ...
- nginx负载均衡集群中的session共享说明
在网站使用nginx+php做负载均衡情况下,同一个IP访问同一个页面会被分配到不同的服务器上,如果session不同步的话,就会出现很多问题,比如说最常见的登录状态. 下面罗列几种nginx负载均衡 ...
随机推荐
- plsql导入excel文件
plsql导入excel文件 CREATE TABLE DWSB_GRMX1 ( XH VARCHAR2(40), SFZH VARCHAR2(40 ...
- php抓取文章内容分析
preg_match_all — 执行一个全局正则表达式匹配 int preg_match_all ( string pattern, string subject, array matches [, ...
- Oracle 与Sql Server常用函数对比
来自:http://topic.csdn.net/u/20080704/08/b2b8c42f-b0d6-4cda-98b1-6e4a279b4ff8.html 感谢楼主 函数 SQLServer和O ...
- Linux 查看服务器硬件信息
目录 CPU CPU 总核数 = 物理CPU个数 X 每颗物理CPU的核数 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 查看路数/Socket(s) cat /proc ...
- L1-012 计算指数
真的没骗你,这道才是简单题 —— 对任意给定的不超过 10 的正整数 n,要求你输出 2n.不难吧? 输入格式: 输入在一行中给出一个不超过 10 的正整数 n. 输出格式: 在一行中按照格式 ...
- Spring的DAO模块
Spring的DAO模块提供了对JDBC.Hibernate.JDO等DAO层支持. DAO模块依赖 commons-pool.jar.commons-collections.jar package ...
- centos7 vsftp的安装
首先下载vsftp yum install -y vsftpd 安装好了之后 编辑默认的文件 vi /etc/vsftpd/vsftpd.conf 更改下面的: anonymous_enable=NO ...
- spring集成redis——主从配置以及哨兵监控
Redis主从模式配置: Redis的主从模式配置是非常简单的,首先我们需要有2个可运行的redis环境: master node : 192.168.56.101 8887 slave node: ...
- django页面导出excel
from django.http import HttpResponse from xlwt import * from io import BytesIO def excel_export(requ ...
- 使用MySQLTuner-perl对MySQL进行优化
项目地址https://github.com/major/MySQLTuner-perl.git 抄一把说明,不翻译了,累-- MySQLTuner is a script written in Pe ...