美文网首页
阿里的slb的一次体验

阿里的slb的一次体验

作者: PENG先森_晓宇 | 来源:发表于2019-09-27 17:16 被阅读0次
  • tcp负载和http负载

  • http负载后台服务器的健康检测
    检测路由为http://后台服务器ip:端口/心跳检测路由

如果没有写心跳检测路由的话,检测路由就是http://后台服务器ip:端口/,如果该路由能返回http code 2xx则代码检测成功,如果http code为5xx则代表检测失败。

总结:检测方法就是http://后台服务器ip:端口/(心跳检测路由),如果能返回2xx则成功,如果5xx则失败

  • api服务配置auth2.0验证

现象:slb负载了2台api服务器,进入登录页面输入账号密码提示登录成功,且进入系统后立即报auth2.0验证失败问题,系统又自动退出。

分析:由于后端服务器使用了auth2.0验证,每个接口头必须验证header里面的access_token,且auth只会把access_token存放到本地机器上。

用户的登录请求比如分发到A机器上,A机器然后验证成功,access_token存放到了A机器上,登录系统之后,又一个请求,比如首页请求分此时发到了B机器上(因为请求均衡分发),此时header头里的access_token在B机器上验证,此时由于B机器上并没有存放access_token,所以验证失败,系统登出。

解决方法;

  • 负载均衡配置会话保持,也就是同一个ip会保存一个cookie,同一个cookie的请求会定位到相同的机器上,也就解决了上述问题
  • 把验证服务单独拿出来,可机器间共享。此时需要一套验证服务

相关文章

网友评论

      本文标题:阿里的slb的一次体验

      本文链接:https://www.haomeiwen.com/subject/xrdauctx.html