2017-08-26 100 views
1

我有一个运行安装了点击部署的WP站点的GCE VM实例。运行得非常好,我设法在斯德哥尔摩的一个页面上使用pingdom工具获得了600毫秒的时间。来自美国的达拉斯并不是那么棒:〜4s和来自澳大利亚......> 6s。GCE:为现有VM实例启用CDN /将现有VM实例添加到新的区域实例组

除CDN外,所有优化都完成。由于我在云端运行,我以为很容易,但我太天真了。

我试图启用Google CDN,但我在文档中感到困惑。

尝试1: 尝试创建负载平衡并从我的wp实例添加存储桶,但未能获得任何结果。我没有做的是将LB IP添加到我的DNS。

Q1:我必须这样做吗(DNS中的IP)?我不清楚。

尝试2 创建一个实例组,区域。听起来不错,但我已经有一个实例,有一个固定的IP和一个连接到它的域。

问题2:如何将现有实例添加到新创建的组?或者我不能?

我的WP网站是一个超级简单的网站,对于公司展示,所以我不需要计算能力。并行化静态资源的下载应该足够了,但为了学习,我愿意额外努力并创建任何安装CDN所需的内容。

问题3:是否有一种更简单的方法来为静态资源创建CDN?

+0

非托管实例组是否有帮助? https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-unmanaged-instances – Dagang

+0

纠正我,如果我错了,但当我从单区切换到多区时,我可以不再在组中添加我的实例。这个想法并不是在同一个区域有多个实例,而是在全局部署,因此需要多个区域。 我错过了什么吗?我仍然期望静态资源的简单CDN应该更简单。 – SharpBCD

回答

-1

答案是:

你可以,但它不是有用/你不能管理的实例。

我个人认为,Google CDN仍然需要增长一点。
主要问题:

  • 没有“原产地拉”的方法
  • 没有的gzip或处理
  • 每一个文件的任何其他形式的需要手动设置公之于众。您无法设置文件夹,并且文件夹结构中没有递归传播。
  • 我遇到了与权利相关的非常奇怪的错误。我的实例可以将文件从存储桶复制到服务器,但无法写入。经过数小时的搜索修复是为某些文件设置权限。

大约10个小时......实验。然后,我在几秒钟内在AWS上设置一个CDN作为复制/粘贴域名,并且只需点击几下即可完成。 所以也许这只是我,但我认为这是一个可以改进的产品。

我试过的: 我推出了一组托管的实例,安装了带有“hello world”+ 1图片的WP。您从cmd行执行此操作,点击部署在此处不起作用。
然后我用BlazeMeter做了一个压力测试,它自动调整到10个实例(大约)。那件很棒的工作。
CDN已启用,但Google Pagespeed正在尖叫并行化下载,没有其他域,然后主要被发现在URL中。此外,现在加载的时间与安装CDN之前的时间相同,所以......并非真正需要它。

之后,我通过存储桶创建了另一个CDN,它作为CDN工作。但是,没有可用的PULL。你可以复制/粘贴相关文件,通过一个很好的拖动界面。不够好,所以我尝试使用rsync来解决许多权利冲突。最后它工作。然后我需要为每个文件设置公开的权限。无法设置文件夹,因此您需要输入每个文件夹,只选择文件并按下按钮。那也是。现在它正在工作。但gzip不被支持,这会导致我的总体时间增加。没有其他方法可以自行gzip文件并再次上传。手动。

因此,我放弃并使用了另一个CDN,我在1分钟内完成安装。
我相信我需要等一会儿,直到Google CDN成熟。

0

Google的CDN需要负载平衡。所以你需要设置它。具体而言,您需要:

TargetHttpProxy - > UrlMap - > BackendService - >(区域)非托管InstanceGroup - >您的WP实例。

这是从API和CLI看起来的样子。如果您使用的是Web UI,只需设置一个普通的HTTP负载平衡器并为该实例组请求区域性和非托管。

稍后,您可以在另一个区域(或区域)中添加另一个非托管实例组,并将其附加到同一个BackendService以进行负载平衡。它是启用CDN的BackendService。


为什么一个区域非托管实例组?

那么,首先,只有非托管实例组允许您添加非InstanceGroupManager创建的实例。而且由于唯一类型的非托管实例组是一个区域性非托管实例组,这是您唯一的选择。但这并不重要,因为您可以简单地创建更多实例组。

+0

嗨@Stephen Weinberg,谢谢你的回复。 我使用了“答案”,因为“评论”对于我的回复来说还不够大。 让我知道你是否想要更详细的反馈。 – SharpBCD

相关问题