如何实现大型网站的连续迁移?

时间:2014-03-30 02:06:50

标签: content-management-system migration cdn continuous

我正在开发一个3,000多页的网站,每天更新。它已经基于开源CMS构建。但是,我们不能简单地继续定期应用热修复。我们需要更换整个系统,我预计需要在1 - 2年内更换整个系统。我们没有工作人员在替换系统上工作而另一个正在进行工作,因为它会导致重复工作。我们在新网站上工作时也无法进行“代码冻结”。

因此,这相当于在驾驶时更换轮胎。或者在飞行时固定翅膀。或各种类比。

这让我想到了一个名为“持续迁移”的概念。我在这里阅读这篇文章:https://www.acquia.com/blog/dont-wait-migrate-drupal-continuous-migration

作者的建议是使用像Fastly这样的CDN。我们的想法是CDN允许您在URL的基础上在旧系统和新系统之间切换。从理论上讲,这个想法听起来像是一个有用的好主意。本文声称您可以使用Varnish执行此操作,但Fastly可以使工作更轻松。我对Varnish的工作量不大,所以我无法真正验证其声明。

我也不知道这是一个好主意还是有更好的选择。我查看了Fastly的定价方案,我根本无法将其意义转化为具体的价格点。我不明白这些神秘的云服务定价计划,它们对我没有意义。我不知道网站使用什么样的带宽。另一个机构负责管理网站的服务器。

有人可以帮助我了解使用在线CDN是否会比使用Varnish更好?有免费或更便宜的解决方案吗?有人可以每月或每年告诉我这相当于什么?是否有其他更好的方法可以分阶段为大型网站推出新网站?

谢谢!

2 个答案:

答案 0 :(得分:0)

我认为我对你的问题没有确切的答案,但可能是我的回答有点帮助。

我认为CDN不会给你带来优势。这是你有多个系统。

对代码的更改

在专业环境中,我习惯有三种不同的CMS安装。第一个是开发系统,通常在我的电脑上。该系统用于开发单元测试支持的扩展,修复bug等。代码致力于修订控制系统(如SVN,CVS或Git)。持续集成系统检查对RCS的提交。实现功能(或修复某些错误)时,将创建一个命名标记。然后,这个标记版本安装在测试系统上,开发人员,客户和用户可以在其中测试实现。在成功测试之后,将在生产系统上安装此标记版本。

第一眼看上去很费时间。但这不是因为大多数步骤都可以实现自动化。最大的优势是客户可以测试测试系统的变化。并且不太可能仅在您的生产系统上发生错误。 (前提条件是您的系统建立在类似/相同的环境中。)

内容的更改

如果您的代码更改了内容的处理方式,那么当您的代码处理时,这是一个优势 CMS具有强大的工作流支持。您可以轻松地为工作流程添加一个步骤 这取决于内容是否旧并且必须为当前文档迁移。 这样您就可以持续迁移内容。

HTH

答案 1 :(得分:0)

Varnish是缓存而不是CDN。它拦截页面请求并提供缓存版本(如果存在)。

CDN将从服务器外的位置(通常在云端)提供内容(图像,JS,其他资源等)。

基于云的解决方案定价通常非常神秘,因为它是相当复杂的技术。

我会小心连续迁移。我过去已经完成了两种方法(连续和完全迁移),我不得不说,连续是一种痛苦。它意味着所有内容的管理时间加倍,并假设您的要求在所有时间点都相同。

不幸的是,我会说你在1 - 2年内进行适当的重建比继续迁移更好,但显然你最了解这一点。

我建议您也考虑采用混合方式?构建一个导出工具,将所有内容保持在可转换状态,如CSV / XML / JSON,这样您就可以在准备好后导入新系统。这意味着您可以在新系统中需要时添加新构建请求(如果新系统与旧系统完全相同,那么新系统中的重点是什么)并且您可以保留所有内容。此外,您无需一直构建和维护两个CMS。