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负载均衡 ...
随机推荐
- CentOS下tar解压 gz解压 bz2等各种解压文件使用方法
.tar 解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是压缩!) ——————————————— . ...
- cnblogs插件jiathis
博客园cnblogs增加分享插件 <!--jiathis button Begin--> <div id="ckepop"> <span class= ...
- Java——IO类,字节流写数据
body, table{font-family: 微软雅黑} table{border-collapse: collapse; border: solid gray; border-width: 2p ...
- bacula配置
Bacula Bacula是一款开源的跨平台网络备份工具,提供基于企业级的CS的备份解决方案.可以对数据进行备份.恢复.以及完整性校验. 功能特点: 支持完全备份,增量备份,差异备份. 支持多种恢复 ...
- html头标签meta实现refresh重定向
<html> <head> <meta http-equiv="content-type" content="text/html; char ...
- Alpha阶段敏捷冲刺---Day3
一.Daily Scrum Meeting照片 二.今天冲刺情况反馈 今天我们上完课后在禹洲楼教室外进行我们的每日立会.开会的内容主要是总结了一下这几天各自的任务及任务进度,交流了一下各自遇到的困难. ...
- sprintf 函数
//$tick 保留{$decimalplaces}位小数,不够位数的小数点后面用0 填充$tick = sprintf( "%.0${decimalplaces}lf ", $i ...
- Python学习(004)-字典{}
特点: 无序状态 键唯一 不可变类型:字符串.整型.元组 可变类型:列表.字典 字典创建 第一种: dic1={','sex':'man'} print(dic1['name']) ----- ...
- Python mode_w
# 每次使用w模式打开文件, 都会清空这个文件(坑) f = open("胡辣汤",mode="w",encoding="utf-8") f ...
- 算法训练 P1103
算法训练 P1103 时间限制:1.0s 内存限制:256.0MB 编程实现两个复数的运算.设有两个复数 和 ,则他们的运算公式为: 要求:(1)定义一个结构体类型来描述复数. ...