nginx服务器的负载均衡和动静分离(未完)
2024-10-20 11:26:52
安装nginx,我的博客里面有介绍源码和yum安装.
实战:使用nginx实现动静分离的负载均衡集群
实战:使用haproxy实现负载均衡集群
LB负载均衡集群分为两类:LVS(四层)和Nginx或proxy(七层)
客户端通过访问分发器的VIP来访问网站
现在应用更复杂,比如现在网站页面有:.php .html .png .jpg .jsp 等,有动态页面有静态页面,静态页面一般是不变的,想访问更快些。
但是前面的LVS是四层的,基于IP的,现在需要在不同应用层基于不同的应用进行分发.
工作中,希望:
静态文件处理:可以使用nginx或apache
动态文件处理:apache,tomcat
图片文件处理:squid
nginx 动静分离负载均衡:
1.nginx的upstream目前最常用3中方式分配
1)轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除
2)weight
指定轮询几率,weight和访问比率正比,用于后端服务器性能不均的情况.
3)ip_hash
每个请求访问ip的hash结果分配,这样每个访客固定一个后端服务器,可以解决session的问题.
4)fair(第三方)
按后端服务器相应时间来分配请求,响应时间短的优先分配
5)url_hash(第三方)
配置nginx.conf:
定位小技巧(定位两个百分号,按%)
在server里面配置
server{ listen ;
server_name localhost; location /{ root html;
index index.html index.htm;
if($request_uri ~* \.html$)
{#后缀为html的走下面服务器
proxy_pass http://htmlservers;
}
if($request_uri ~* \.php$)
{#后缀php的走下面
proxy_pass http://phpservers;
}
#其他的资源走picserver
proxy_pass http://picservers; } }
在http{}里面添加server{}外面
upstream htmlservers{#定义负载均衡服务器组
server 192.168.1.62:;
server 192.168.1.64:;
} upstream phpservers{
server 192.168.1.62:;
server 192.168.1.64:;
} upstream picservers{
server 192.168.1.62:;
server 192.168.1.64:;
}
最新文章
- 《超实用的JavaScript代码段》—— 读后总结
- git 教程(5)--工作区和暂存区
- FileSystemWatcher触发多次Change事件的解决办法 .
- Android编译过程详解(一)
- spring中获取Bean
- POJ 2488 A Knight's Journey(DFS)
- Remove Element,Remove Duplicates from Sorted Array,Remove Duplicates from Sorted Array II
- [ACM] POJ 2635 The Embarrassed Cryptographer (同余定理,素数打表)
- 2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 J Beautiful Numbers (数位dp)
- 2D 加速图形界面开发源代码亲写 想买来学习得加qq 313244484 20万当前代码,完整400万包写完
- Nodejs+MQTT
- Saliency Detection: A Spectral Residual Approach
- UE4的委托
- 身份证运算符 is 和 is not(检查两个数据在内存当中是否是同一个值) | 逻辑运算符 and or not | 数据类型的判断 isinstance
- MSys2安装QT5
- Chrome下解决本地异步请求失败的问题(Origin null is not allowed by Access-Control-Allow-Origin. )
- 使用Flask+MongoDB实现基于REST的接口简单操作
- 使用shell/bat脚本调试java程序示例
- rbac - 介绍
- 【第三周】每周psp
热门文章
- Servlet 3.1 规范
- python3 中 and 和 or 运算规律
- [Android]Android 布局中如何让图片和文字居中显示?
- HTML5 Boilerplate笔记(2)(转)
- iOS 灵活,简易,扩展性强的气泡提示框LFBubbleView(含源码)
- Douglas Peucker算法的C#实现
- PHP反射(ReflectionClass、ReflectionMethod)在ThinkPHP框架的控制器调度模块中的应用
- 自定义PHP页面跳转函数redirect($url, $time = 0, $msg = '')
- Oracle里面的用户user无法登录 LOCKED(TIMED)
- [shell 编程] if [ $# -eq 0 ]该语句是什么含义?