Php 如何在全球范围内使用AmazonEC2中的最小延迟?
我们很少有网站会在EC2中存储并向全球受众提供相当数量的数据和MySQL查询,因此延迟应该最小化 我目前在欧洲,因此网站延迟约为80ms,因为实例区域位于欧洲/爱尔兰 但是当我从美国加载网站时,延迟会增加到300毫秒,我想知道,我们如何在Amazon上建立一个系统,以尽可能快的方式在世界各地加载网站?我不是在谈论图像或文件,我是在谈论一个完整的网站Php 如何在全球范围内使用AmazonEC2中的最小延迟?,php,amazon-web-services,amazon-ec2,amazon-cloudfront,Php,Amazon Web Services,Amazon Ec2,Amazon Cloudfront,我们很少有网站会在EC2中存储并向全球受众提供相当数量的数据和MySQL查询,因此延迟应该最小化 我目前在欧洲,因此网站延迟约为80ms,因为实例区域位于欧洲/爱尔兰 但是当我从美国加载网站时,延迟会增加到300毫秒,我想知道,我们如何在Amazon上建立一个系统,以尽可能快的方式在世界各地加载网站?我不是在谈论图像或文件,我是在谈论一个完整的网站 谢谢您可以通过亚马逊Route 53和EC2实现这一点 一些经验法则: 使您的数据库尽可能靠近您的应用程序(同一地区) 通过Amazon S3和/
谢谢您可以通过亚马逊
Route 53
和EC2
实现这一点
一些经验法则:
- 使您的数据库尽可能靠近您的应用程序(同一地区)
- 通过Amazon S3和/或Amazon CloudFront(如图像、样式表、javascript等)提供静态数据,尽可能从应用程序/web服务器上卸载
- 如果速度至关重要,尽可能缓存数据以减少数据库查询(例如在数据库前面使用ElasticCache或类似工具)
这将比立即进入多个区域容易得多,这将涉及大量的技术开销,而收益可能很小。CloudFront,milti区域,这是一个很大的主题,并不适合这里。我只是找不到一个分步指南,我是否应该为每个区域创建实例,然后用路由53将它们连接在一起?或者说,任何信息或链接都是值得感谢的。不鼓励只提供链接的答案。不清楚,伙计。我应该为每个区域创建实例吗?是的,这就是想法,AWS应该为您处理负载平衡。所以基本上我应该为4个区域付费来完成这项工作?或者负载均衡器支付4个实例的费用?感谢您的回复,我们已经在同一地区安装了S3,数据库,网站在速度方面没有任何问题。基本上,从欧盟,TTFB的速度是80ms,如果我从美国打开站点,它会变成300ms,我读到这是因为区域延迟(你走得越远,你得到的延迟就越多)。如果我想实现这个功能,我应该支付更多的费用吗?我应该在每个地区创建一个实例,然后以某种方式将它们链接起来吗?如果他们需要共享数据,那么你需要一种在所有地区之间复制数据的方法。这将取决于您如何存储数据。你使用哪个数据库?使用DynamoDB更容易。80ms vs 300ms对您的最终用户真的很重要吗?总页面加载时间是多少?不,我使用我自己的MySQL服务器。安装在实例中的。这很重要,不是因为页面负载,ajax请求在美国端总共需要400毫秒,而在欧盟,需要110毫秒,我在线销售PHP脚本,所以速度对客户来说非常重要。是否有任何文件或指南,我可以按照达到这一点?谢谢