linux下nginx负载均衡搭建的方法步骤
首先先了解下负载均衡,假设一个场景,如果有1000个客户同时访问你服务器时,而你只有一台服务器的Nginx,且只有一个MySQL服务器,那么这些请求
可能会高出你的的服务器承受能力,就会down掉;
解决方法:
1.垂直升级:就是增加服务器的配置,CPU,内存等
2.水平升级:添加多台服务器来分担服务器压力
常见的负载均衡器
根据工作在的协议层划分可划分为:
- 四层负载均衡:根据请求报文中的目标地址和端口进行调度
- 七层负载均衡:根据请求报文的内容进行调度,这种调度属于「代理」的方式
根据软硬件划分:
硬件负载均衡: ◦F5 的 BIG-IP
- Citrix 的 NetScaler
- 这类硬件负载均衡器通常能同时提供四层和七层负载均衡,但同时也价格不菲
软件负载均衡: ◦TCP 层:LVS,HaProxy,Nginx
- 基于 HTTP 协议:Haproxy,Nginx,ATS(Apache Traffic Server),squid,varnish
- 基于 MySQL 协议:mysql-proxy
【一、Nginx能做什么】
1、http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。
2、虚拟主机。可以实现在一台服务器虚拟出多个网站。例如个人网路使用的虚拟主机。
3、反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器
4、解决跨域问题。
【二、安装】
1、yum install nginx,提示No package nginx available。因为nginx位于第三方的yum源里面,而不在centos官方yum源里面,所以先yum install epel-release,待epel安装完后,再yum install nginx
2、service nginx start 启动nginx,在浏览器输入ip地址即可访问nginx的界面,如果访问不了,查看防火墙的访问状态,增加80端口访问
【三、负载均衡配置】
nginx启动之后,我们需要根据需要修改配置文件,可以先使用 ps-ef|grep nginx查看当前使用的配置文件。
在http模块中添加如下配置
upstream servers { server 192.168.80.1:8010 weight=10; server 192.168.80.10:8010 weight=10; }
把server改为
server { listen 80; server_name test.nginx.com; location / { proxy_pass http://servers; } location /buy { proxy_pass http://172.18.144.23:5789/; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
最后重启service nginx reload
另外要切记开放防火墙访问端口才可以正常访问的
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
- 4.训练模型之准备训练数据
- 关于dg broker的简单配置(r5笔记第99天)
- 三天速成 TensorFlow课件分享
- 干货 | 机器学习算法线上部署方法
- 用于快速开发 3D 数据处理软件的开源数据处理库 —— Open3D | Github 项目推荐
- 【java网络】IO编程
- 一周 Github Trending 热门项目,最全中华古诗词数据库 | Github 项目推荐
- 【线程池】线程池与工作队列
- 一个快速方便的图形化 Python 调试器 —— birdseye | Github 项目推荐
- 关于分区表的在线重定义(r5笔记第98天)
- 10个实用的但偏执的Java编程技术
- 看似诡异的tablespace online问题(r5笔记第95天)
- python2.7进行爬虫POI代码(划分小网格算法)
- 从 Encoder 到 Decoder 实现 Seq2Seq 模型
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Android table布局开发实现简单计算器
- Android实现面包屑功能的代码(支持Fragment联动)
- Android自定义带动画效果的圆形ProgressBar
- Android App启动图启动界面(Splash)的简单实现代码
- WordPress头部去除window._wpemojiSettings代码
- Android小程序实现选项菜单
- Linux VPS安装Google Authenticator实现SSH登陆二次验证
- Android小程序实现访问联系人
- Android小程序实现切换背景颜色
- 浅析Android加载字体包及封装的方法
- android实现滑动标签页效果的代码解析
- Android PC端用ADB抓取指定应用日志实现步骤
- Android studio 禁用AndroidX方式
- Android 实现把bitmap图片的某一部分的颜色改成其他颜色
- AndroidStudio构建项目提示错误信息“unable to find valid certification”的完美解决方案