【发布时间】:2012-04-04 03:00:01
【问题描述】:
我正在努力弄清楚如何扩展允许用户登录的任何类型的 Web 应用程序,并且依赖于该用户登录来执行任何操作。
例如,假设我有一个 Web 应用程序,它允许用户登录、编辑用户地址簿、向其他用户发送消息以及接收来自用户的消息。
我收到的一些建议是使用动词将我的应用程序划分为服务。所以我会有一个地址簿编辑服务、一个消息发送服务、一个消息接收服务和一个身份验证服务。所有这些都可以单独进行水平扩展,并且不会共享数据。这将是理想的,只有他们必须共享数据 - 当前登录的用户。我无法从概念上了解这将如何工作?我是否应该只在服务之间发送用户 ID,并且隐含的是登录的用户?如果我想使用有关用户当前正在做什么的信息来维护会话状态怎么办?
【问题讨论】: