从CodeIgniter迁移大型应用程序的可接受方式

我们有一个巨大的网站,用旧的(7岁)CodeIgniter修改版本编写,我们被困在 php 5.4因为那个。 这个应用程序起初非常小,但是这些年来增加了很多,我们每天都在对它进行更改,所以代码不是很干净,我们到处乱砍,许多版本资产同时加载,因为它们是 布局的依赖性等等......无论如何,根本不是很好。</ p>

我们想转移到Yii 2,因为这是我们非常熟悉的东西,我们还写了其他应用程序 在它,它支持更高版本的PHP,作曲家等等,你明白了。</ p>

我们没有大量的开发人员,所以我们中的一些人可以重写应用程序 我和我们中的一些人继续开发当前版本,因此我认为我们应该开始重写它的一小部分,并且使用nginx将流量重定向到新重写的部分,并且这样做直到完成整个重写,基本上一段时间, 两个应用程序将并行运行共享相同的数据库,但访问各种网址将访问一个应用程序或另一个。</ p>

你们有没有走过这条路 并可以分享经验,一些指示等?</ p>
</ div>

展开原文

原文

We have a huge website written in a old (7 years old) modified version of CodeIgniter and we're stuck on php 5.4 because of that. This app started very very small but increased a huge deal in these years and we're doing changes to it on a daily basis, so the code is not quite clean, we have hacks everywhere, many versioned assets loaded at same time because they are dependencies of the layout, etc... anyway, not pretty at all.

We would like to move to Yii 2 because that's something we're very familiar with and we have other apps written in it, it supports higher versions of PHP, composer, etc etc, you get the point.

We don't have an army of devs so that some of us can rewrite the app from scratch and some of us continue developing the current one, thus i think we should start rewriting small parts of it and using nginx would redirect the traffic to the newly rewritten parts, and do so till the entire rewrite is done, basically for a while, both apps would run in parallel sharing same database but accessing various urls would access one app or the other.

Has any of you gone this road and can share the experience, some pointers, etc ?

donglu3087
donglu3087 即使是一个很小的开发团队,糟糕的做法也会回来并且每次都会咬你。不升级CI,允许不可维护的黑客进入生产,失去对架构的控制,这完全是你的错,而不是CI的错。然而,Yii也非常好。我会花时间重新评估您的应用程序的位置。写一些体面的计划,并从头开始重新编码。计划发布日期并装箱旧系统。否则,在编写新系统时,您将花费尽可能长的编码转换。并从错误中吸取教训。
3 年多之前 回复
duanou2016
duanou2016 它可能听起来很复杂,尤其是非公共任务-它的设置非常简单,非常灵活。一旦你有一个格式,你喜欢它的设置速度非常快。能够使用其他服务器也是一个巨大的帮助,因为你测试你的代码等。我用它来转换大型电子商务应用程序从5.2到5.6。
3 年多之前 回复
drfb52000
drfb52000 是的,这也可以是一个选项,但如果可能的话我宁愿避免api调用开销。
3 年多之前 回复
dongzhiyi2006
dongzhiyi2006 否则,请考虑将应用程序的哪些部分迁移到API样式的数据交换。换句话说,发送/接收json对象或数组。然后,您可以将应用程序的一部分放在具有更新版本PHP的完全不同的服务器上。
3 年多之前 回复
dougou6114
dougou6114 你错过了一个观点,事实上我们首先使用古老版本的CI,其次我们必须根据我们的需求对其进行大量修改,因此CI的升级是不可能的。而且,我们不再热衷于使用CI了。
3 年多之前 回复
duanchuan6350
duanchuan6350 我将推迟你的基本前提-Codeigniter3在PHP7上运行,因此你不会“陷入”PHP5.4。Codeigniter3还支持Composer。如果您使用的是Codeigniter2,它实际上很容易升级到CI3,那么很少有重大变化。
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问