资讯专栏INFORMATION COLUMN

[新手]nginx反向代理负载均衡配置

kbyyd24 / 1106人阅读

摘要:今天无聊,把上几天自己测试的作反向代理负载均衡的步骤记录下来,以供学习记录。反向代理,我个人理解是通过一台反向代理服务器,把客户端的把有请求按照一定的规则分发给后台的服务器。

今天无聊,把上几天自己测试的nginx作反向代理负载均衡的步骤记录下来,以供学习记录。
反向代理,我个人理解是通过一台反向代理服务器,把客户端的把有请求按照一定的规则分发给后台的服务器。nginx作反向代理服务器的虚拟机配置如下:

upstream itest {
    #正常情况下应该作如下配置
    #server 192.168.20.1:80; # 应用服务器1
    #server 192.168.20.2:80; # 应用服务器2

    #由于我只有一台测试的服务器,所以ip一样,用端口作区别
    #1、按照权重大小分配服务器轮询机率,如果全不指定weight则按时间逐个轮询
    server 127.0.0.1:7749 weight=3;
    server 127.0.0.1:8864 weight=5;
    server 127.0.0.1:9981;    #默认weight为1
    
    #2、根据ip_hash分配服务器,每个ip固定访问一台服务器,可解决session问题,但通常session问题通常都是写入固定memcached或redis服务器来解决的。
    ip_hash;
    server 127.0.0.1:7749;
    server 127.0.0.1:9981;
    
    #3、fair根据响应时间分配,好像要第三方插件支持
    #4、url_hash根据url分配,好像也需要第三方插件支持
}

server {
    listen 80;
    server_name itest.com;
    location / {
        proxy_pass http://itest;
    }
}

而后台的服务器,可以是nginx、apache、tomcat等,例如server 127.0.0.1:9981为nginx服务器,则其虚拟机最简配置如下:

server {
    listen 9981;
    root /sites/itest/9981;    #9981为文件夹,因为为了模拟多台服务器上,所以以路径名作区分
    index index.html;
}

如果server 127.0.0.1:7749为apache服务器,其最简配置如下


    DocumentRoot /sites/itest/7749

测试时,只要在/sites/itest/{7749|8864|9981}目录下添加不同内容index.html,访问看到不同itest.com正常会看到不同的index.html内容。
概念问题:我理解的反向代理与负载均衡之前的关系是,反向代理是实现负载均衡的一种方法; 但看到网上一些说法是,反向代理与负载均衡是一个意思; 还有就是反向代理会缓存一些静态资源,更快,而负载均衡会直接访问后台服务器,不会缓存。望看到知道的好人大神们给评一下儿,其它有什么不对的也希望指点一下

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/39198.html

相关文章

  • Nginx

    摘要:此外,其也能够提供强大的反向代理功能。是由为俄罗斯访问量第二的站点开发的,第一个公开版本发布于年月日。 keepalived+nginx 实现高可用双机热备 + 负载均衡架构 1 准备4个ubuntu16.04虚拟机(启用网卡二并使用桥接模式):A服务器:192.168.0.103 主B服务器:192.168.0.104 主(备) 前端工程师学习 Nginx ...

    syoya 评论0 收藏0

发表评论

0条评论

kbyyd24

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<