2014-01-12 31 views
3

位一个小白的,当涉及到的网站托管和数据库托管,尤其是在国际层面上的概念。对于长时间的问题抱歉,我似乎无法找到任何解释这些事情的地方,这种方式不会让你挠头并在解释过程中点击“关闭标签”按钮!我觉得Stack Overflow应该对这些东西有一些总体指导/解释,因为像我这样的人可以编写和编写web /计算机/移动应用程序,但仍然对如何处理服务器/托管/网站的基本实体工作。多个服务器的虚拟主机/数据库/ ETC

首先,我明白什么(请纠正我,或者我的理解是错误的编辑这个职位)。据我所知,一个简单,基本的网站

  1. 托管一台服务器(无论是云或物理的)上。
  2. 该服务器(在Rackspace公司,AWS或其他虚拟主机提供商)允许管理员来存储网站的数据库和相应的服务器代码(在拼音/ Python/PHP /等)。
  3. 当用户导航到网站,该域被定向到服务器,并且服务器处理和转发该信息到基于该请求的用户。

这很简单,主要是因为它是一个网站和一个服务器

我不明白的是这一切是如何工作的,当数据库变得太大举办一台计算机上,并且希望维护网站,以便它是高性能和世界各地的低延迟。当从美国,印度,中国等地访问Google,Facebook和阿里巴巴等网站时,他们会瞬间将信息传回给用户。当然,他们有数千台服务器。

因此,这里来的网站的问题需要高性能跨不同地区

  1. 会是什么这样的配置是什么样子?多个服务器在不同的位置?这是一个强制配置来维持低延迟吗?或者可以在一个位置使用数据中心来完成此任务吗?
  2. 这些数据中心服务器上存储了什么?当然,从网站的信息,但如何呢?随附的服务器代码是否分别存储在每台服务器上?一台服务器?
  3. 这些不同的端点服务器上是否托管了数据库和所有附带信息?网站如何知道与哪个服务器通信以收集所需的数据?是否有一个“入口/路由”服务器?这些信息如何在不同的服务器上以这种方式进行维护,以便它们能够在不损失宝贵的等待时间的情况下相互通信?
  4. 是否有一个中央数据库/数据中心为不同位置的不同数据中心/服务器提供服务?或者他们拼接起来并放置在几个不同的服务器上?如果是这样,那么这些数据如何保持无缝连接?

基本上,我有很多的麻烦设想任何形式的超越有一台服务器支持一个网站的设置的。

现在我拥有熟悉的配置,可以将我的网站的MySQL数据库从我的房间中的服务器上运行下去,而且它很容易理解正在发生的事情。现在我想了解下一个关卡,而且事情似乎很快就会变得朦胧。

+0

我也一直在想这个问题。但是,我认为这是SO的一种偏离主题。 –

+0

您是否在搜索有关分布式和云系统开发的Hunkou Amazon等云系统? –

+0

我也曾问过类似的问题。这个问题的措辞比我的要清楚得多,所以+1。我希望有人能指出你正确的方向。 –

回答

0

对于托管在多个不同物理服务器上的数据库/代码,是否有一个入口/路由服务器的答案是肯定的。在该服务器上完成的处理量可能会有所不同(从几乎任何事情(例如,只是将请求转发给负担最轻的服务器的负载平衡服务器))到该服务器上发生的大部分事件(可能只有少数数据库调用分散到不同的服务器上)。

如何配置所有服务器只取决于特定站点在并行化的性能优势和服务器之间通信所涉及的额外处理和网络开销之间做出的折衷。分配负载的

一个极端的例子是YouTube,该网站 实际上有与在热门影片存储在ISP 的服务器上,以便更快地访问互联网服务供应商的交易。我不知道它是如何工作的,但它有可能只是截获了这些视频的请求 ,将它们发回给你,并且Youtube服务器根本不涉及 。

^我写了上面的内容,然后试图找到原来的链接,我读了它,不能,所以我不知道它是否是真的 - 有人可以验证这一点?

相关问题