我读过关于CDN,但不知道它是什么。
可以说我拥有一个国际化的社交networking(文本和图像内容),而且来自不同国家的stream量也在增长,我有使用CDN吗?
我从我读到的来源获得的图片是,它复制你的内容,并把它放在世界各地的许多服务器,使用户将从最近的点获取它。
这是否意味着每个服务器都有我的mysql数据库和图像文件的副本?
这是使您的Web服务可用于世界的正确方法吗? 导致你怎么能在世界各地build立一个服务器,联系每个国家的托pipe公司?
内容分发networking通常用于静态媒体。 一些CDN是Push,一些是Pull,这意味着你要么将内容推送到他们的服务器,要么将它们复制到他们自己的服务器networking中,要么从你的站点用一张告诉他们的地图告诉他们cdn.domain.com – > yourdomain.com/media/。 静态媒体请求由CDN提供,如果不在那里,则从源(服务器)提取。
Pull CDN还可以caching起源(dynamic页面),如果原始服务器出现故障,保持站点的某些function仍然有效。 但是,对于一个非常互动的网站,这不会很有帮助。 一个服务5分钟旧数据的新闻网站能够利用CDNcaching起源,比社交媒体网站更好一点,在这个网站上,状态更新需要花费5分钟才能显示。
一个CDN通常是一个caching,在他们的边缘只有很less的智能。 这些是严格设置caching内容和快速服务的机器。 虽然Akamai确实支持Edge Side Includes,但是让他们真正做到这一点代价昂贵,而且有些困难。 静态内容通常是CDN将caching的内容。
您的mysql数据和源站点function仍然存在于一个地方,但是,您的静态内容和可能您的caching页面将由CDN提供服务。 为了从多个位置运行您的站点,您需要运行多个服务器,并使用“导向器”将冲浪者发送到最近的服务器。 您可以使用主机命名,DNS Anycast或导演框来完成此操作。 您仍然需要在各种数据中心运行多个LAMP服务器。 有托pipe提供商可以处理多个位置部署,您仍然可以使用CDN卸载您的静态内容。