阿里云分布式服务搭建

    对外域名 example.com

    ECS1:公网 IP 200.114.5.36,内网 IP 192.1.1.100

    ECS2:公网 IP 200.114.5.37,内网 IP 192.1.1.101

    LBS:公网IP 222.1.1.1

    RDS:账号信息 -h 192.1.1.102 -P 3306 -utest -ptest



步骤:

    example.com DNS 解析指向 LBS 222.1.1.1

    LBS 后台添加 ECS1 和 ECS2,对外端口 80,对内端口 80,加权轮询策略,会话保持3600秒

    ECS1 和 ECS2 中的应用数据库使用 RDS,应用 session 保存在 RDS。图片等存储最好使用 OSS,如果不是 OSS 少数场景可能存在少许问题,这里不展开。


负载均衡的效果如下:

curl http://222.1.1.1/index.html

ECS1

curl http://222.1.1.1/index.html

ECS2


附:Session 同步问题

    LBS 支持会话保持,但并不支持 session 同步。所谓会话保持,是指来自同一个 用户的请求会在一段时间内路由到同一个 ECS;session 同步是指一个用户的 session 数据保持在多个 ECS 中,无论用户请求哪个 ECS, session 数据都存在。

    阿里云 LBS 不支持 session 同步的原因: session 同步是应用层的事情,底层软件无法感知 session。默认情况下 PHP 将 session 数据保存在磁盘文件中,PHP 配置文件中 session.save_path 负责session文件的存放位置。

    应用层 session 同步方案:把 session 保存在数据库中,如 RDS 、Memcached、Redis 等。
    
    
    
前端负载均衡可行性测试:
LBS 前端ECS先一台做测试
 

猜你喜欢

转载自www.cnblogs.com/hnhycnlc888/p/12973206.html