redis-database

码代码时遇到一个奇怪问题:

2个业务系统连接了同一个redis

同一个key获取的返回值不一样

原因:

手残的一个业务系统使用了 

redisStandaloneConfiguration.setDatabase(15);

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好,根据您的要求,我可以给您提供一种基于Docker实现的方案,来扩展您的企业三层架构应用,并实现代理服务器的IP流量分流和黑名单设置。 首先,您需要在每个应用服务器和Redis服务器上创建一个Docker容器,并将它们加入到同一个Docker网络中。您可以使用以下命令创建这些Docker容器: ```bash # 创建应用服务器容器 docker run -d --name app-server-1 --network my-network app-image docker run -d --name app-server-2 --network my-network app-image # 创建Redis服务器容器 docker run -d --name redis-master --network my-network redis-master-image docker run -d --name redis-slave-1 --network my-network redis-slave-image docker run -d --name redis-slave-2 --network my-network redis-slave-image ``` 接下来,您需要创建一个Nginx容器,并将它加入到同一个Docker网络中。您可以使用以下命令创建Nginx容器: ```bash docker run -d --name nginx-proxy --network my-network -p 80:80 nginx-image ``` 在Nginx容器中,您可以使用Nginx的IP Hash和GeoIP模块来实现IP流量的分流和黑名单的设置。您可以使用以下命令安装Nginx和GeoIP模块: ```bash apt-get update apt-get install nginx nginx-extras libnginx-mod-http-geoip geoip-database ``` 然后,您需要在Nginx容器中的配置文件中添加以下内容: ``` http { geoip_country /usr/share/GeoIP/GeoIP.dat; geoip_city /usr/share/GeoIP/GeoLiteCity.dat; geoip_proxy_recursive on; upstream app { ip_hash; server app-server-1; server app-server-2; } upstream redis { ip_hash; server redis-master; server redis-slave-1; server redis-slave-2; } server { listen 80; server_name example.com; # Blacklist if ($geoip_country_code = CN) { return 403; } if ($remote_addr = 1.2.3.4) { return 403; } location / { proxy_pass http://app; } location /redis/ { proxy_pass http://redis; } } } ``` 在上面的配置中,我们使用ip_hash模块对应用服务器和Redis服务器进行了负载均衡,并使用GeoIP模块对IP进行了分流。当用户访问时,Nginx会根据用户的IP地址将它们分配到相应的服务器上。此外,我们还在配置文件中设置了一个黑名单,当用户的IP地址被列入黑名单时,Nginx会拒绝它们的访问请求。 最后,您需要启动所有的Docker容器。您可以使用以下命令启动它们: ```bash docker start app-server-1 docker start app-server-2 docker start redis-master docker start redis-slave-1 docker start redis-slave-2 docker start nginx-proxy ``` 这样,您就可以基于Docker扩展您的企业三层架构应用,并实现代理服务器的IP流量分流和黑名单设置。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值