1

我很高兴知道登录系统如何在 Facebook、Gmail、youtube、雅虎等大型应用程序中工作。输入凭据后,服务器响应速度更快。这怎么可能?

必须有更多的数据库服务器来存储用户信息。所以我的问题是

  1. 他们如何通过更多数据库服务器查找身份验证信息?
  2. 他们是否查看所有数据库服务器以检查特定用户,如果是,它如何更快地响应?
  3. 他们是否根据用户的地理位置分配数据库服务器?
  4. 他们是否还有更多的应用程序服务器以及它们如何相互连接。
4

1 回答 1

2
  1. RDBMS 具有链接在异构数据源上发出分布式查询、更新、命令和事务的服务器的功能。

  2. 数据库系统将使用某种形式的关于用户的缓存信息,在 SQL Server 中存储执行计划并在执行查询时使用。数据库管理系统将决定采用哪个执行计划以生成最快的结果或使用缓存的数据集。注意:谷歌、Facebook、亚马逊等将在后台使用大量服务器处理能力,这将使其看起来是即时的。他们还将有专门的团队来管理他们的数据库、执行索引、调整、优化和识别瓶颈。

  3. 服务器的地理位置可能是一个因素。服务器离用户越近,他们获取信息的速度就越快,但 IMO 这将是纳秒/毫秒差异的问题,具体取决于他们的数据中心所在的位置。如果服务器太忙,那么负载平衡会将您/其他用户迁移到具有更多可用资源的服务器。

  4. 是的。在这样的场景中需要使用多个 Web 服务器,并且与问题的第 3 部分相关,您访问的服务器取决于最近的服务器拥有多少可用资源以及它是否会接受您的连接。它们是分布式的,但整个过程对用户来说似乎是透明的,即他们认为他们使用与其他所有客户端相同的服务器。它们可以通过使用会话管理、Web 服务和其他互操作性技术和技术相互连接。

于 2013-02-11T09:45:42.090 回答