柏林纪行(中):Node.js Collaboration Summit

传送门:

Node.js Collaboration Summit

比较沉重的思考写完,下面是比较轻松的部分了……按照时间顺序,先记录一下 Node.js Collaboration Summit 的见闻。

Node.js Collaboration Summit 在 JSConf 会场附近的 co up 举办,主要以各个 working group 分组讨论以及集体讨论一些重要 issue 的形式进行。因为航班的缘故错过了第一天早上的 introduction 所以没有认全人,不过还是认识了很多一起 code review 过的 GitHub ID 的本尊,参与了部分讨论。

HTTP/2

目前 nodejs/http2 的 master 还在继续和上游的 master 同步,基本实现已经完成,主要缺测试和进一步检查有没有内存泄漏等问题。经过和 npm 上 http2 的维护者沟通后确定这个模块最终的名字是 http2,通过 npm 的安装机制来保证未来跑在老版本 Node 使用 npm 包的代码依然能够正常运行,但是升级到新版本的 Node 如果 require('http2') 就需要迁移到 Node Core 自己的这个实现了。

Diagnostics

目前大多数 APM 厂商都是通过 monkey-patch Node.js 里的模块获取必要的监控信息的,但是这样很容易造成兼容问题并且互相冲突。计划对各家 APM 插入代码(instrumentation)的方式总结一下 best practices,编写一个不断更新的文档来为 core 模块和用户模块提供指导,方便多方代码和谐共处。另外或许可以统一一下 APM 厂商输出监控信息的格式,一个想法是使用 V8 的 trace events API,但问题是目前大多数 APM agent 都是在 JS 层插入代码的,而 trace events API 是 C++ 层的,如果产生跨 JS 和 C++ 层的调用会增加性能损失。另一个方案是各家联手设计一个 JS 的 API,不过这个 API 可能需要放在 core 里否则没法在生态系统里落地。API 的设计可以借鉴 mongodb 的 APM API,他们自己维护这个 API,目前为止效果还挺不错的。

TSC 的组织结构

现在 Node.js 的组织结构是 CTC(Core Technical Comittee)属于 TSC(Technical Steering Comittee)的下属,各个 working group 也在 TSC 下面,CTC 和各个 WG 负责 Node.js 项目与生态系统日常的实际工作,TSC 的职能更偏行政一些,比如审批旅行经费的申请,这就导致了很多人对 TSC 的日常工作不感兴趣,对参加 TSC 的工作会议也不是很积极。鉴于这个情况,一些人参考 TC39 的组织,希望能够重新调整 Node.js TSC 的组织结构,改 CTC 为一个针对 Node.js Core 的 WG,和其他 WG 并列,并且提升一些非正式的 GitHub 团队(如负责版本发布与维护 git 分支的 release 团队)作为正式的 WG,不跨 WG 的争议在 WG 内自行投票解决(类似现在 CTC 投票解决 Node.js Core 里的一些决策争议),跨 WG 的争议提到 TSC 投票解决,每个 WG 只有一票。日常偏行政的工作还是由 TSC 决定,但是不要求所有人都参加,只要关心的人出来投票即可,这样没有强烈争议的问题可以更快通过。同时,TSC 的职能也更偏重为各个技术团队和 Node.js 基金会董事沟通的桥梁。

IMG_1157.jpg

Myles Borins 和 James Snell 向大家介绍他们对新架构的设想

与几个日本 collaborator 的交流

这次到柏林见到了 Node.js Core 两个比较活跃的日本开发者,Daijiro Wachi(和智大二郎)和 Yosuke Furukawa(忘记问汉字怎么写了……),他们也是 NodeFest(東京Node学園祭)的组织者,作为同是亚洲国家的 Node.js 开发者,他们对国内的 Node.js 社区也很感兴趣,希望我们能够多交流一下。此外还得知韩国也是有 Node.js 的会议的,叫做 playnode,他们问我中国有没有 Node.js 相关的活动,想了一下好像只有比较小的 Node Party 和 Node 地下铁了,虽然 JSConf China 也有一部分 Node.js 相关的话题……

我和 Daijiro 因为之前一直在 GitHub 上一起参与 WHATWG URL 标准的实现所以比较熟,聊到了最近在日本很火的中国人不需要用现金的新闻(凄い勢いで進む中国のキャッシュレス社会、既に想像の遥か上に到達),顺便介绍了一下阿里的一些业务,另外在和几个德国人聊天的时候他们也表示中国在这方面比其他国家领先了不少,很多人对国内这方面的生活方式都感到很好奇。