今日惊闻一个噩耗,目前现有的 nodejs 项目全部下掉,通通用 java 重构。
笔者 13 年初尝 nodejs ,觉得此货骨骼清奇他日必将大有作为,它以 javascript 作为语言基础,解决了 web 开发前后端中语言层面的转换,为想成为全栈开发者的人员提供了一条极佳的可选道路。并且得益于 javascript 天生异步的模式,在解决某些高并发场景下优势异常明显。同时前后端都以 json 作为数据传输形式,减少了很多类型转换的麻烦。 nodejs 的出现能让 javascript 运行服务端,至此 pc 、移动端、服务端,三端都能用 javascript 了,开心。鉴于以上几点,笔者决议投身 javascript 开发的浪潮中。
一开始 javascript 基础尚且薄弱,就做了一年多的纯前端,从事前端三驾马车 html 、 css 、 javascript ,由于在做纯前端之前做了小半年游戏服务端( nodejs 实现),也从未放弃对 node 的研究关注,试想有朝一日能寻觅一个全栈 javascript 开发的岗位,果然,随着前端的大火、 nodejs 的崛起,又过了 10 个月,笔者终于找到了这个梦寐以求的岗位,然而,这才刚刚开始。
初到厂里,车间主任 A 说,能不能让 nodejs 和 java 的 rpc 框架 dubbo 打通,笔者当时一脸懵逼,这要怎么搞,经过老大 A 的指点以及查找相关资料,阅读相关源码,和同事探讨,我们终于搞出来了,当时要说喜极而泣的话,一点都不夸张。因为当时已有的 nodejs 和 dubbo 通信全是走的 json 模型,但我厂既有服务都是 dubbo 的默认用法( dubbo 协议+hessian 序列化),所以为了极大的减少成本,我们这边就做了这么一个库,没想到,反响还可以,月最高下载量能破 4k ,这其中也不乏有大厂在用,这样的成绩,至少能让笔者买个鸡腿犒劳下自己了,后面就用这个作为底层,承载我们后台海量的业务需求,顺便说一下后台的前端也是我这边来负责,架构上就是前端->nodejs->java ,我负责前端+nodejs 这一块,有点类似淘宝的中途岛计划,可以想象,在此期间经历了很多坑,很多意想不到的问题,诚然,感兴趣的话即使刀山火海会迎难而上。
其中问题多种多样,不仅代码上,还有其它的一些,比如说 nodejs 的发布流程,私服的搭建、服务器预配置的 nodejs 版本、编译部署规则等等等等,这些我们都在同运维部门协商,我们全力协助他们搭建,路漫漫其修远兮,经过半年多的磨合、催促,终于私服的搭建在前几天初具规模了。
然而,在此之前,大概两个月前我们部门空降了个新的车间主任 B ,之前的老大 A ,被调往其它部门,老大 B 花了些时间研究了下我们整个大组的所有项目,得知我们有 nodejs 项目掺杂在其中,也没说什么。可就在前几天 nodejs 私服搭建好,运维某个领导来询问一些 nodejs 事项,他说,我们 nodejs 项目要下了,因为就几个人懂,没法做,期间讨论了一会儿,最终结论就是把 nodejs 下了,运维领导很开心,第二天前老大 A 也被告知,他所负责的另外一个 nodejs 项目全部用 java 重构,没商量!
到这,可以说在我厂 nodejs 作为后端的存在遭全面封杀,今天斗胆分析一下缘由,在我厂主体是 java , 95%,一开始 nodejs 只是小打小闹,做一些边边角角的工作,后来由于打通了 dubbo 能做的事太多了,可能几乎所有直接对接 web 、移动端的都可以接了,这种类型的项目在我厂占的比例还是很大的,这么多事情能用 nodejs 做, java 不开心了,你 nodejs 要干嘛,造反么?没人懂、没人会、没资源,运维同学也很忙,既有的所有 nodejs 项目统统给我下了。可能这就是原因吧。
nodejs 在我厂道阻且长,经历了重重困难,落得一个这样结局,也罢。君要臣死、臣不得不死。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.