Taobao FED

分类:Node.js

找回 Node.js 里面那些遗失的 ES6 特性

由于 Babel,WebPack, React 技术的流行, 小明同学已经开始在前端代码里面用上了 ECMAScript 2015 (以下称 ES6 ) 的众多特性。import, export, class, arrow function, let const 等等关键词甚至都已经开始变成小明的肌肉记忆。 但是等等,对于小明这样既写 React 又写 Node.js 的的人来说,又有点分裂了。

Node.js 源站应用稳定性保障

源站与 CDN源站是 CDN 技术中的一部分,是发布内容的原始站点。CDN 负责承载流量的部分称做缓存服务器,而缓存服务器自身不生产内容,需要从源站获取原始内容。Dragonfly 作为淘宝内容管理系统(CMS)的源站,渲染并为缓存服务器提供了所有的页面内容。 Dragonfly 使用 Node.js 开发,稳定性保障是一边实践探索、一边总结经验。现在来回顾,稳定性保障涉及了 Dragonfly

探究 Node.js 中的 drain 事件

起因最近在用 Node.js 写一些网络请求相关的代码时,频繁在一些开源代码中看到 drain 事件的使用,于是我也依葫芦画瓢写到了自己的代码里面: 12345socket.on('drain', function(){ console.log('drain event fired.');});socket.write('so

Node.js 单元测试:workflow

Talk is cheap, show me the code! 是否还记得小明在《 Node.js 单元测试之我要写测试》里引用的这句话么,不过引用了之后,小明就像跑路了一般再也没见其 code……其实呀,不知道大家有没有关注最近比较火 minggeJs, 稍微联想下你就知道小明最近在忙啥了 O(∩_∩)O~~ 虽说小明现在还写不出 minggeJs 这样的前端库,不过,小明想说的是:当你

Node.js 2015-12-04 漏洞浅析

前言Node.js 在 4 号放出了一个重要的更新,看了下更新日志,主要修复的是一些安全性的漏洞,包括 CVE-2015-8027 和 CVE-2015-6764 这两个漏洞,影响版本还是比较多的,v5.1.0、v4.2.2、v0.12.8 及以下都有波及。在更新发布后,简单看了下漏洞的细节,在这里简单介绍下。 CVE-2015-8027 Denial of Service Vulnerabil

让我们谈谈「生产环境中的 Node.js」- Node 地下铁第1次线下沙龙邀约

作为「新兴」的服务端编程语言,Node.js 的流行是现象级的。 它是开发者的宠儿: GitHub 上最活跃的编程语言; 第三方模块总量和增长在所有编程语言中排名第一; 它在互联网公司的一些成功应用被津津乐道: Netflix 使用 Node.js 接管了所有端的视图层渲染; Uber 的线上应用和实时分发系统完全基于 Node.js 构建; Paypal 已经拥有超过 700 名的 No

新版卖家中心 Bigpipe 实践(一)

新版卖家中心已经上线 3 个多月,乔福老师的 Midway 之旅不只是前后端分离,还是工程化的大作坊。我们很清楚前端不再只是地平线上的人类,现在我们可以深入到 View 层和 Controller 层做更多的有趣事。 View 层关于 View 层,有张图可能还活在大家的本地缓存里, UI Layer 已不是单纯在服务端或者在客户端。 Midway 做的就是将 View 层彻底授权给前端。然

多进程下的测试覆盖率

单元测试在 Node.js 项目开发中的重要性就不言而喻了,项目一旦稍微大起来了就经常出现拆东墙补西墙的情况。这边修复了一个 bug,那边又不知道什么时候产生了一个新的 bug,越到后面没有经过完整的测试都不敢随便发布。 代码覆盖率测试的时候,我们常常关心,是否所有代码都测试到了。这个指标就叫做“代码覆盖率”(code coverage),它有四个测量维度。 行覆盖率(line coverag

Node.js 单元测试:我要写测试

故事是这样的:小明是一个前端工程师,近期因为个人兴趣以及工作上的需要,开始做 Node.js 相关的项目。一个多月过去了,小明基于 Koa 搭出了自己的第一个 Node.js web 应用,在这个过程中,小明也遇到了很多的问题: 如何在上线时保证代码完全没问题? 每次增加功能时如何保证之前的功能是可用的? 随着代码增多,没有勇气和信心去重构代码 面对以上这些问题,小明作为一个前端工程师,惯性

高效 Node.js 开发环境之命令行工具篇

追求更高的效率是码农不断的追求。选择合适的工具,合理搭配使用,既能提高一部分开发效率,又能改善写代码时的心情。本文介绍笔者自己平时使用的部分工具与配置,希望抛砖引玉,对大家有所帮助。每种工具或配置后都有扩展阅读的链接,方便大家做更深入的了解。 写在前面的操作系统选择作为一个 Node.js 开发者,如果你还在用 Windows,那你一定是上辈子折翼的天使……(大雾)。Node.js 应用的开发过