公司项目升级,大佬们有什么建议吗?
发布于 6 年前 作者 helloHT 4040 次浏览 来自 问答

老代码用的是es5的规范,然后有些模块也已经很老了(express用的3.x)。能否在模块不变的情况下,将node版本升级到最新的持久版,然后将老代码的回调改成async/await ?

6 回复

Node在6.0之后对旧版的兼容很好了吧,你可以先升Node到最新版其他不动试试,看能不能跑起来,不能跑起来就解决一下问题。 跑起来之后建议升级一下所有Module,旧版Module有可能存在安全性问题(比如DDOS风险),长期不维护的Module找新的替代品替换吧,过程中可能会涉及到改代码,顺手把Callback改成async/await,需要并发执行的地方改成Promise,新的Module很多都能直接返回Promise了,建议你先升级Module也是能为后面改Callback省一些工作量。 可以把整个工作分成几期来做,一期一期迭代做,每一期改动不会特别大,测试和调试也比较容易。

@libook 嗯嗯,谢谢你的建议,目前用新的node版本可以跑的起来,没有发生什么问题

不需要改的功能不要去改,需要改的功能可以顺便重新写

建议先去算一卦,看看宜不宜升级

建议重新开发新版本

升级会影响之前的

回到顶部