【发布时间】:2012-08-27 01:20:43
【问题描述】:
我们有一个现有的网站,它是在一个特定的框架上编写的,我们正在开发这个网站的新版本,它是在一个不同的框架上编写的。
这意味着我们的表结构现在完全不同了。我们已经编写了将旧数据迁移到新数据的代码,因此成员和内容可以顺利迁移。但是,我们希望在旧网站上有 x 人,在新网站上有 y 人。
通过这种方式,我们可以测试人们是否喜欢这个新网站、他们如何使用它等,然后再将其设为“直播”。新站点将位于不同的子域中。但真正的问题是,我们如何才能让数据库协同工作,所以如果用户在新网站上,并在论坛上发帖,它会在旧网站上显示,反之亦然。
作为不同的框架和表格,这似乎是一项非常艰巨的工作。我们可能必须为两个系统上的每个模型编写一个接口,以处理更新另一个数据库上的数据。一位开发人员到处使用触发器,因此当此表上的数据发生更改时,触发器将在另一个上更新它。
两者似乎都很啰嗦。我说的是相当多的代码、成员、购买、订单、博客文章、cmets、论坛主题 + cmets,以及十几个其他表(+cms!)。
ps,解决方案需要数周而不是数月!
关于如何以某种方式实现这一点,有没有人有任何建议。
【问题讨论】:
-
我会创建一个时间表,使用来自新代码库上的用户的数据更新旧数据库以定期运行,您可以轻松地执行此操作 - 尽管转换可能很讨厌,或者去与触发器的建议。您是否考虑过不将它们并排测试,而是像 beta 一样进行测试? IE,在迁移完成之前数据不会匹配?这样,在新站点上启动的线程将不可用,但新站点上的用户可以使用所有功能。开心的时候,迁移旧数据完成一切。
-
像 beta 一样进行测试并不能提供足够的控制,所以他们确实希望它们并排。我的反对建议,每隔几天从旧站点同步数据到新站点,人们可以随心所欲地玩......
-
您甚至可以每小时(或更频繁地)运行一次 cron,这可能不会太糟糕。我正在考虑的另一个建议是迁移网站的一部分 - 比如说一个论坛类别类型的东西?因此,对于所有用户,一个特定的论坛使用新代码,其余的则使用旧代码。
标签: php asp.net web-testing beta-testing