网站编辑团队近百人,工作日变动次数1000+次。由于种种原因,该公司网站对已使用8年的CMS内容管理系统进行了升级。
在现有的基础上,是更换新的CMS还是升级CMS,一直是国内争论的热点。后,为了保证升级的顺利进行,方便与集团内其他系统的通信,我们选择对现有的CMS进行升级。
升级后的新系统只是继承了旧系统的名称(以避免猜疑和隐藏名称),但实际上内核架构等方面有所不同。严格地说,这是另一种制度。选择它的主要原因是界面web URL结构等可以保持不变。
整个升级过程的初始周期为一个月。预计12月中旬开始,1月中旬结束。但由于种种原因,领导需要我们在2019年元旦前完成升级,所以工期直接缩短了一半。半个月过去了很难过,升级后一个月的测试过程也很难过。
一由于新旧系统的模板标签完全不同,因此在替换系统后,需要重新生成所有正在使用的模板。因此,有必要对需要重新制作的模板数量进行评估,终确定需要重新制作的PC模板约有200个,移动模板超过100个。与其他模板对应的频道和主题已停止更新,因此您只能保留静态页而不重新生成它们。(自2010年使用旧系统以来,共制作了6364个模板。很难平均每天制作两个模板。)
当一开始和新系统的接收者交谈时,对方说所有的旧模板都需要手工重新制作。我准备带一个小团队手动更改它们。这里的技术工程师为实际操作提供了一个转换脚本。该脚本可以将95%以上的旧模板转换为新的系统模板。我们只需要对它进行微调,这样可以节省很多东西,而且是一个惊喜。否则,我和参与复习的同学在这半个月里会更难过。
更换新系统后,一些同事过来说,原来的项目是无序开放的。我们只知道原来的网站上有那么多的老话题还在维护中。
二根据旧系统的使用经验,稿件和栏目的生成速度与系统的数据量成反比。近年来,经常会出现稿件出版后几分钟才产生,有时系统就卡住了。在过去的八年里,有超过300万的数据。在此基础上,生成的页面预计在1000万左右,而且速度慢是正常的。为了降低旧数据对新系统的压力,只有2018年1月1日以后的数据才导入新系统。所有以前的数据都以静态页面的形式保存。如果需要修改,则只能转到服务器修改静态页。幸运的是,您已经半个多月没有收到任何修改旧页面的请求了。
三考虑到用户习惯和搜索引擎优化等因素,替换系统应保证所有前台URL保持不变,新的URL结构与旧系统相同。这也是选择升级CMS而不是直接替换另一个长期研究的CMS的重要考虑因素。CMS的改变要么是URL结构的改变,要么是为了保证新系统的URL结构保持不变而付出的巨大资源代价。事实上,我真的很想直接改变CMS。我厌倦了这么多年只使用一个
主入口页面的url也被保留。在重新生成列表页的过程中,只有列表页会丢失旧数据的条目,因为新系统中没有数据。由于网站的性质,丢失这部分数据输入并不是什么大问题。在跟踪网站流量的过程中发现,虽然全站流量有一定下降,但在可控范围内是可以接受的。
四升级后,外部RSS应及时复制:现在与其他网站的合作主要是通过互相提供RSS内容来实现的。为了保证合作数据在升级后不会中断,需要尽快在新模板上重新创建RSS文件。
对升级过程中出现的问题做好计划和解决方案。通过分析各种解决方案,发现可靠的方法是在极限状态下切换回原来的系统。当然,的结果是向新制度平稳过渡。
权限继承。网站重要的部分之一是权限管理。虽然相关负责人可以在问题发生后通过分析日志来确定(幸运的是,在掌管网站权限的8年中,没有由于权限问题),但的办法是将小的操作权限授予该账户,以确保更新安全。
不出所料,权力问题是一个大工程。由于新旧系统的权限控制方法不同,新系统在旧权限上存在一些漏洞,所以需要删除和重建所有帐户。近200个账号,100多个频道,每个账号都有不同的权限。为每个帐户指定不同的权限,然后逐个通知。还要确保在删除期间未使用编辑。初,我想通过修改数据表来完成这部分工作,但发现它没有手动操作快。我花了很多时间来组织权限。现在我觉得这是个噩梦
编辑培训。新系统完全是另一个CMS,操作习惯也基本改变了。虽然我个人觉得很容易使用,但编辑水平参差不齐,基础训练必不可少。除此之外,我们还要为后期的第二次甚至第三次培训做准备,但是我们还没有准备好整理一个像旧系统培训那样有几十页的文档。没人能看到
新系统的培训工作是以新系统的技术为基础的。不过,由于没有和我们的日常工作结合起来,只注重理论,编辑在培训结束后告诉我,希望我能为他们进行一次落地训练。我想这项工作将在新年之后进行。
在升级过程中执行日常工作。在升级过程中,日常工作无法停止。但是,为了减少升级后的主题重编工作和不可预知的问题,在新旧系统准备切换的后几天,我们准备尽量推迟所有主题和其他页面的制作。
实际情况是,有几个紧急的话题,必须立即在线。它不够大很好,可以接受。
再次确定系统切换时间和上次增量库存更改所需的时间。为了保证新旧CMS前后的平稳过渡,需要将旧系统的数据一个接一个地导入到新系统中,直到到达切换时间点,并让编辑停止更新旧系统的数据,开始将数据更新到新系统中。
另外,为了避免页面在切换过程中出现无法打开等异常问题,我们选择在用户访问量较小的晚上开始,为了在晚上早些时候完成,所以我们开始准备19:00以上,23:00左右开始正式操作。
打开防火墙。为了保证网站的安全,服务器端已经打开了防火墙,需要根据所有编辑过的计算机IP地址打开白名单。
仍有一些漏洞有待解决。在我把收集到的虫子发给对方之后,对方回答说:你昨天给对方发来的一般性问题震惊了我们。问题非常严重,许多角落都出现了。
总的来说,升级后的有了很大的进步。尽管升级过程有曲折,但仍然可以接受。