当前位置:  开发笔记 > 编程语言 > 正文

你如何扩展像谷歌这样的HTTP服务器?

如何解决《你如何扩展像谷歌这样的HTTP服务器?》经验,为你挑选了3个好方法。

我经常惊叹于我可以随时随地访问www.google.com,并快速获取返回的页面.

当然,他们压缩他们的输出并保持最小的设计 - 这有所帮助.

但他们必须同时拥有数以百万计的点击量,这些点击是网站上DNS列为"www.google.com"的.

所有设置了Apache或其他Web服务器的人都知道事情很棒且超快,直到你开始获得几千个同时连接,更不用说数百万了!

那么,他们是如何做到的呢?我猜他们有一整套服务器机器,但你永远不会知道它.刚才我去Verizon的网址是www22.verizon.com.你永远也看不到"www22.google.com",从来没有.

任何想法他们使用什么特定技术,或者我们非谷歌凡人可以使用哪些技术来做同样的事情?



1> DGentry..:

google.com,update.microsoft.com以及处理惊人的高聚合带宽的其他服务通过DNS实现了大部分的魔力.

BGP Anycast路由用于从世界各地的多个点公布其DNS服务器的IP地址.每个DNS服务器都配置为将google.com解析为地理位置接近的数据中心内的IP地址.所以这是基于地理位置的第一级负载平衡.

接下来,虽然google.com的DNS查询将仅返回少量IP地址,但DNS服务器会快速在其响应中循环遍历大量地址.请求google.com的每个客户端都会获得特定答案,并且可以暂时缓存该答案,但下一个客户端将获得不同的IP地址.所以这是第二级负载平衡.

第三,他们使用传统的服务器负载平衡器将会话映射到单个IP地址到多个后端服务器.所以这是第三级负载平衡.



2> CMS..:

这篇文章可能对您有意思:

Google平台:Google网站背后的技术基础架构



3> Moishe Lettv..:

昨晚在奥斯汀举行的谷歌开放日活动中,艾伦·尤斯塔斯展示了谷歌在俄勒冈州达尔斯的数据中心的照片,并表示它大约有3个足球场.

它是最新的之一,但谷歌有多个数据中心.这并不是每个查询都转到同一台计算机上.

即便如此,如果您猜测Google拥有多少台计算机,以及每秒对Google进行多少次查询,每台服务器都必须处理大量请求.

以下是关于如何促进这一点的一些解读:

http://research.google.com/archive/bigtable.html
http://labs.google.com/papers/gfs.html

只有http://research.google.com/一般,那里有很多很酷的信息.

推荐阅读
赛亚兔备_393
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有