基于Nginx实现负载均衡的部署
Nginx(enginex)是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。
nginx官方网站:http://nginx.org/
nginx plus收费软件,企业级(功能强大)
1.下载安装包并打开
2.修改配置文件
不显示版本号
3.关掉debug功能
4.安装nginx
5.创建软链接
创建完成之后就可以直接调用
6.nginx的相关命令
命令 | 含义 |
---|---|
nginx | 开启nginx服务 |
nginx -t | 检查配置文件的语法 |
nginx -s stop | 关闭nginx服务 |
nginx -s reload | 重新加载nginx服务 |
测试:在浏览器访问ngxin
编辑test.html页面
测试:
1.修改worker_processes的值
Nginx 进程数设置,一般来说,拥有几个逻辑CPU,就设置为几个 为宜
本机只有一个cpu我设置为1,也可调用auto函数,自动匹配
2.worker_cpu_affinity的说明
默认是没有开启的,0001 0010 0100 1000
分别代表第1、2、3、4个逻辑CPU,所以我们可以设置0010 0100 1000来将3个进程分别绑定到第2、3、4个逻辑CPU上:
本次实验不加入此项
3.修改最大连接数
在操作系统中进行修改:
4.添加nginx用户并指定家目录
5.修改用户和用户组
6.设置轮叫upstream
在末尾加入:
当访问
www.westos.org的80端口时把页面定位到
检查语法并重新加载:
在客户端添加本地解析:
server2和server3的httpd服务开启:
测试:在客户端打开浏览器访问www.westos.org
Nginx中的ip_hash技术能够将某个ip 的请求定向到同一台后端web机器中,这样一来这个ip
下的客户端和某个后端
web机器就能建立起稳固的链接
ip_hash机制能够让某一客户机在相当长的一段时间内只访问固定的后端的某台真实的web服务器,这样会话就会得以保持,在网站页面进行login的时候就不会在后面的web服务器之间跳来跳去了,也不会出现登录一次的网站又提醒重新登录的情况.
1.配置nginx服务
2.客户端检测
1.配置nginx文件
2.测试:
当server2和server3的httpd服务关闭
1.下载1.10版本的nginx和sticky模块
关闭原来的nginx服务:
解包:
2.安装nginx1.10版本
指定位置为/opt/nginx,加入sticky模块
3.编写nginx配置文件
把之前写好的文件先复制过来
然后再进一步编写
4.开启服务
因为之前版本的nginx 链到了/sbin,所以采用绝对路径的方法来调用1.10版的nginx
测试:
在浏览器访问的时候会一直访问同一个服务器
按F12可以看到缓存信息:
在shell中访问则会轮叫
基于Nginx实现负载均衡的部署的更多相关文章
- 分布式存储之MogileFS基于Nginx实现负载均衡(Nginx+MogileFS)
MogileFS分布式文件系统特点: 1.具有raid的性能 2.不存在单点故障 3.简单的命名空间: 每个文件对应一个key:用于domain定义名称空间 4.不共享任何数据 5.传输中立,无特殊协 ...
- 使用Ansible实现nginx+keepalived高可用负载均衡自动化部署
本篇文章记录通过Ansible自动化部署nginx的负载均衡高可用,前端代理使用nginx+keepalived,端web server使用3台nginx用于负载效果的体现,结构图如下: 部署前准备工 ...
- Linux 集群概念 , wsgi , Nginx负载均衡实验 , 部署CRM(Django+uwsgi+nginx), 部署学城项目(vue+uwsgi+nginx)
Linux 集群概念 , wsgi , Nginx负载均衡实验 , 部署CRM(Django+uwsgi+nginx), 部署学城项目(vue+uwsgi+nginx) 一丶集群和Nginx反向代理 ...
- 使用nginx sticky实现基于cookie的负载均衡
在多台后台服务器的环境下,我们为了确保一个客户只和一台服务器通信,我们势必使用长连接.使用什么方式来实现这种连接呢,常见的有使用nginx自带的ip_hash来做,我想这绝对不是一个好的办法,如果前端 ...
- Nginx基于TCP的负载均衡的配置例子
原文:https://blog.csdn.net/bigtree_3721/article/details/72833955 nginx-1.9.0 已发布,该版本增加了 stream 模块用于一般的 ...
- 使用nginx sticky实现基于cookie的负载均衡【转】
在多台后台服务器的环境下,我们为了确保一个客户只和一台服务器通信,我们势必使用长连接.使用什么方式来实现这种连接呢,常见的有使用nginx自带的ip_hash来做,我想这绝对不是一个好的办法,如果前端 ...
- Nginx作为负载均衡服务器(Windows环境)
一个最简单的负载均衡测试,不涉及到session复制,只是将请求分配到不同的服务器上去而已. 1.创建一个简单的web应用.只有一个index.jsp页面,,内容如下. <%@ page lan ...
- [转载] nginx的负载均衡
原文:http://www.srhang.me/blog/2014/08/27/nginx-loabbalance/ Nginx负载均衡 一.特点 1.1 应用情况 Nginx做为一个强大的Web服务 ...
- 利用nginx实现负载均衡和动静分离
1.Nginx介绍 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器 . Nginx 是由 ...
随机推荐
- 基于小熊派Hi3861鸿蒙开发的IoT物联网学习【三】
软件定时器:是基于系统Tick时钟中断且由软件来模拟的定时器,当经过设定的Tick时钟计数值后会触发用户定义的回调函数.定时精度与系统Tick时钟的周期有关. 定时器运行机制: cmsis_os2的A ...
- ubuntu16登录后黑屏无法进入系统问题汇总
今晚在使用虚拟机的过程中发现有些卡顿,顿时想给虚拟机增加内核数,然后,然后,,,我就再也没有看到过图形化界面,在某搜索引擎查找了半天,把我的问题汇总了一下发出来,希望对遇到同样问题的有所帮助. 出现黑 ...
- 获取不到自定义的request的header属性
java获取headers的代码如下: // 获取http-header里面对应的签名信息 Enumeration<?> headerNames = request.getHeaderNa ...
- switch-case例题
根据订单的状态码打印对应的汉字状态(使用switch-case)1-等待付款 2-等待发货 3-运输中 4-已签收 5-已取消 其它-无法追踪 var n='2' switch(n){ case 1: ...
- Spring Boot核心技术之Rest映射以及源码的分析
Spring Boot核心技术之Rest映射以及源码的分析 该博客主要是Rest映射以及源码的分析,主要是思路的学习.SpringBoot版本:2.4.9 环境的搭建 主要分两部分: Index.ht ...
- 记录21.07.22 —— Vue.js基础(一)
VUE基础 语雀课件地址 Vue.js框架 Vue中文文档 Vue.js 创建vue项目 ①在一个空项目中引入vue的js文件 <script src="https://cdn.jsd ...
- for循环排它算法(经典实用)
核心代码 let lis = document.querySelectorAll("li"); for(let i = 0; i < lis.length; i ++) { ...
- Python实现多种SSH连接与文件传输
Python实现SSH控制 使用Python进行基于口令认证的连接: 1 #加载paramiko包 2 import paramiko 3 #创建新的SSH对象 4 Client=paramiko.S ...
- 6.算法竞赛中的常用JAVA API :Math类(转载)
6.算法竞赛中的常用JAVA API :Math类 求最值 最小值 Math.min(int a, int b) Math.min(float a, float b) Math.min(double ...
- 题解 a
传送门 和入阵曲那题很像 这里 \(n\) 很小,可以直接 \(n^2\) 压成一维考虑 然后就是对每个 \(j\) 查询 \([j-r, j-l]\) 中数的个数 这里我是用树状数组求的,带个log ...