您的位置:首页 > 数码常识数码常识
nginx负载均衡的三种方式(nginx实现负载均衡原理)
2025-05-13人已围观
nginx负载均衡的三种方式(nginx实现负载均衡原理)
系统的扩展可以分为纵向扩展和横向扩展。
nginx实现负载均衡原理
纵向扩展是从单机的角度出发,通过增加系统的硬件处理能力来提升服务器的处理能力
横向扩展是通过添加机器来满足大型网站服务的处理能力。
这里面涉及到两个重要的角色分别是"应用集群"和"负载均衡器"。
应用集群:将同一应用部署到多台机器上,组成处理集群,接收负载均衡设备分发的请求,进行处理并返回响应的数据。
负载均衡器:将用户访问的请求根据对应的负载均衡算法,分发到集群中的一台服务器进行处理。
负载均衡的作用
1、解决服务器的高并发压力,提高应用程序的处理性能。
2、提供故障转移,实现高可用。
3、通过添加或减少服务器数量,增强网站的可扩展性。
4、在负载均衡器上进行过滤,可以提高系统的安全性。
负载均衡常用的处理方式方式一:用户手动选择
这种方式比较原始,只要实现的方式就是在网站主页上面提供不同线路、不同服务器链接方式,让用户来选择自己访问的具体服务器,来实现负载均衡。
方式二:DNS轮询方式
DNS
大多域名注册商都支持对同一个主机名添加多条A记录,这就是DNS轮询,DNS服务器将解析请求按照A记录的顺序,随机分配到不同的IP上,这样就能完成简单的负载均衡。DNS轮询的成本非常低,在一些不重要的服务器,被经常使用。
如下是我们为某一个域名添加的IP地址,用2台服务器来做负载均衡。
验证:
将下载的文件上传到服务器并进行解压缩
重命名资源
使用http://sjzlt.cn/shuma/configure命令将资源添加到Nginx模块中
编译
编译可能会出现如下错误,ngx_http_upstream_srv_conf_t结构中缺少default_port
解决方案:
在Nginx的源码中 src/http/ngx_http_upstream.h,找到ngx_http_upstream_srv_conf_s,在模块中添加添加default_port属性
然后再进行make.
更新Nginx
? 6.1 将sbin目录下的nginx进行备份
? 6.2 将安装目录下的objs中的nginx拷贝到sbin目录
? 6.3 更新Nginx
编译测试使用Nginx
上面介绍了Nginx常用的负载均衡的策略,有人说是5种,是把轮询和加权轮询归为一种,也有人说是6种。那么在咱们以后的开发中到底使用哪种,这个需要根据实际项目的应用场景来决定的。
负载均衡案例案例一:对所有请求实现一般轮询规则的负载均衡
案例二:对所有请求实现加权轮询规则的负载均衡
案例三:对特定资源实现负载均衡
案例四:对不同域名实现负载均衡
案例五:实现带有URL重写的负载均衡
上面就是小居数码小编今天给大家介绍的关于(nginx实现负载均衡原理)的全部内容,希望可以帮助到你,想了解更多关于数码知识的问题,欢迎关注我们,并收藏,转发,分享。
94%的朋友还想知道的:
PPT三种录屏方法图文(电脑ppt如何录屏)
恢复微信聊天记录的三种方法是什么(恢复微信聊天记录的方法)
三种方法帮你解决问题(微信聊天记录误删怎么恢复)
三种方法让你批量完成(如何把excel表格数字文本转换为数字)
153797
系统的扩展可以分为纵向扩展和横向扩展。
nginx实现负载均衡原理
纵向扩展是从单机的角度出发,通过增加系统的硬件处理能力来提升服务器的处理能力
横向扩展是通过添加机器来满足大型网站服务的处理能力。
这里面涉及到两个重要的角色分别是"应用集群"和"负载均衡器"。
应用集群:将同一应用部署到多台机器上,组成处理集群,接收负载均衡设备分发的请求,进行处理并返回响应的数据。
负载均衡器:将用户访问的请求根据对应的负载均衡算法,分发到集群中的一台服务器进行处理。
负载均衡的作用
1、解决服务器的高并发压力,提高应用程序的处理性能。
2、提供故障转移,实现高可用。
3、通过添加或减少服务器数量,增强网站的可扩展性。
4、在负载均衡器上进行过滤,可以提高系统的安全性。
负载均衡常用的处理方式方式一:用户手动选择
这种方式比较原始,只要实现的方式就是在网站主页上面提供不同线路、不同服务器链接方式,让用户来选择自己访问的具体服务器,来实现负载均衡。
方式二:DNS轮询方式
DNS
大多域名注册商都支持对同一个主机名添加多条A记录,这就是DNS轮询,DNS服务器将解析请求按照A记录的顺序,随机分配到不同的IP上,这样就能完成简单的负载均衡。DNS轮询的成本非常低,在一些不重要的服务器,被经常使用。
如下是我们为某一个域名添加的IP地址,用2台服务器来做负载均衡。
验证:
将下载的文件上传到服务器并进行解压缩
重命名资源
使用http://sjzlt.cn/shuma/configure命令将资源添加到Nginx模块中
编译
编译可能会出现如下错误,ngx_http_upstream_srv_conf_t结构中缺少default_port
解决方案:
在Nginx的源码中 src/http/ngx_http_upstream.h,找到ngx_http_upstream_srv_conf_s,在模块中添加添加default_port属性
然后再进行make.
更新Nginx
? 6.1 将sbin目录下的nginx进行备份
? 6.2 将安装目录下的objs中的nginx拷贝到sbin目录
? 6.3 更新Nginx
编译测试使用Nginx
上面介绍了Nginx常用的负载均衡的策略,有人说是5种,是把轮询和加权轮询归为一种,也有人说是6种。那么在咱们以后的开发中到底使用哪种,这个需要根据实际项目的应用场景来决定的。
负载均衡案例案例一:对所有请求实现一般轮询规则的负载均衡
案例二:对所有请求实现加权轮询规则的负载均衡
案例三:对特定资源实现负载均衡
案例四:对不同域名实现负载均衡
案例五:实现带有URL重写的负载均衡
上面就是小居数码小编今天给大家介绍的关于(nginx实现负载均衡原理)的全部内容,希望可以帮助到你,想了解更多关于数码知识的问题,欢迎关注我们,并收藏,转发,分享。
94%的朋友还想知道的:
PPT三种录屏方法图文(电脑ppt如何录屏)
恢复微信聊天记录的三种方法是什么(恢复微信聊天记录的方法)
三种方法帮你解决问题(微信聊天记录误删怎么恢复)
三种方法让你批量完成(如何把excel表格数字文本转换为数字)
153797
很赞哦! ()
上一篇:iPhone 13最受欢迎粉色介绍(苹果13最受欢迎的颜色排名)
下一篇:返回列表