1

我正在使用面向服务的架构开发具有分布式服务器的应用程序,这是我的系统架构的链接。这是一个 Rails 3 应用程序,我有 2 个内容处理服务器和 2 个应用程序服务器。所有用户上传(图像/视频)都进入内容处理服务器,所有网页都通过应用程序服务器提供服务。我正在使用 devise gem 进行身份验证,它是基于令牌的身份验证。与服务器的所有交互都是使用基于 HTTP 的 rest API 完成的。每个请求都会向服务器发送一个 auth_token,然后服务器通过检查数据库中的 auth_token 来验证它,并且一切正常,但我不确定以下事情 -

  1. 由于每个请求都使用数据库进行验证,所以当他们的很多用户说 100 万时它不会使数据库服务器过载
  2. 我考虑在登录期间使用会话来存储此 auth_token 并在每个请求上验证请求 auth_token,因为我使用多个服务器进行应用程序和内容处理,所以我需要在所有服务器上进行粘性会话或创建会话,我不这样做不想做。

他们是否可以通过其他方式进行基于令牌的身份验证,而无需在分布式服务器环境中对数据库服务器施加负载?

4

0 回答 0