【问题标题】:Webservice that handles 1 million user accounts处理 100 万个用户帐户的 Web 服务
【发布时间】:2010-01-08 22:57:39
【问题描述】:

假设您正在编写一个拥有 100 万用户的网络应用程序(他们都增长到那么大,对吧!)

您将如何处理用户帐户?我可以想象几个场景:

  1. 滚动您自己的(数据库表、存储在用户配置文件表中的加盐/散列密码)
  2. 如果使用 ASP.NET 编写,请使用登录/角色提供程序(回退到数据库)
  3. 在 Windows 环境中使用 Active Directory
  4. 使用其他一些 LDAP 服务器
  5. OpenID 或 .NET Passport 等第 3 方提供商

稳定性和可扩展性当然很重要。

我想这确实是一个问题,即 Active Directory 和其他 LDAP 服务器是否能够很好地轻松扩展。 Facebook、Twitter 和 Gmail 使用什么作为其后端帐户提供商?

让我想到这一点的是 Google App Engine。看起来真的很酷。但是,如果我使用内置的身份验证内容,用户将需要获得一个 Google 帐户。或者使用上面的#5,用户需要去获取一个 OpenID。我正在努力做到这一点,这样他们就可以在我的网站上进行简单的注册,而无需访问其他网站——对于世界上的非极客:)

【问题讨论】:

  • 我建议使用 OpenID(就像 SO 一样)进行身份验证并将用户相关数据存储在 RDBMS 中。
  • 好电话——我会把它添加到列表中
  • 这是专门针对 AD/LDAP 的可扩展性,还是一般的身份验证可扩展性?

标签: active-directory directory scalability credentials user-accounts


【解决方案1】:

我会问一个实际开发过一个可以满足这么多用户的系统的人。

我会了解其他类似的系统,并查看有关它们的案例研究。 (询问 Microsoft、Oracle、IBM 等)。

但是,为了可用性,您要么需要实施单点登录解决方案,因此用户不需要知道他们的登录详细信息。 (非常适合企业界。)

您必须使用用户知道的信息,即电子邮件地址/用户名和密码。

OpenID 或类似系统对于非技术用户来说太可怕了。
(请注意,查看此内容的任何人都是技术用户。)。

【讨论】:

  • 是一个多表单字段(经典帐户创建表单)比多个按钮列表(OP)更有用吗?
  • 是的。用户更习惯于他们熟悉的内容,即标准的登录/注册屏幕。
  • 我问了 37Signals 的人——他们自己推出了。
【解决方案2】:

OpenID。
如果您必须让用户选择在您的网站上创建帐户,请成为 OP。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-05-19
    • 2017-04-29
    • 1970-01-01
    • 2019-11-19
    • 1970-01-01
    • 2020-05-13
    • 1970-01-01
    相关资源
    最近更新 更多