Zlib模块实现流压缩与解压

 2015年07月09日    1660

在流传输过程中,为减少传输数据加快传输速度,往往会对流进行压缩。HTTP流就是如此,为提高网站响应速度,会在服务端进行压缩,客户端收到数据后再进行相应的解压。Node.js中的Zlib模块提供了流压缩与解压缩功能,Zlib模块提供了对 Gzip/GunzipDeflate/InflateDeflateRaw/InflateRaw类的绑定,这些类可以实现对可读流/可写流的压缩与解压。

阅读全文

执行JS代码 Node.js中的虚拟机VM模块

 2015年07月08日    1695

在Node.js核心模块中,有一个用于执行JavaScript代码的VM虚拟机模块。该模块与JavaScript全局函数eval()类似,提供了一个JavaScript代码执行的沙箱环境。通过VM,JavaScript代码可以被编译后立即执行,也可以编译后保存稍后执行。

阅读全文

Node.js站群管理系统的实现之站点更新的实现

 2015年07月04日    208
Node.js站群管理系统的实现之站点更新的实现

随着公司业务的发展,渐渐的也已经布署了多个站点:公司官网、相关业务站点及App的API站点等。随着站点的增多,站点更新维护的复杂度也在增加。因此,做一套站点管理系统就十分有必要了,计划在站点管理系统中实现的功能有:站点创建、更新、日志查看、域名绑定等功能。本篇实现一个基本git源代码管理的,静态站点的更新功能。

阅读全文

小试StringDecoder模块解码字符串

 2015年07月02日    383

在Node.js中有个字符串解码类,可以通过require('string_decoder')引用后,使用这个模块。字符串解码器StringDecoder可以将缓存Buffer解码为字符串,StringDecoderbuffer.toString()方法的简单实现。在Node.js的child_processcryptoreadline等核心块中,都引用了这个模块。

阅读全文

行读取模块readline

 2015年07月01日    1065

介绍一下Node.js的readline模块。在上篇文章中实现了一个文本文件内容查找程序,其中使用的主要模块就是readline模块。readline模块是一个流内容的逐行读取模块,通过require('readline')引用模块。你可以用readline模块来读取stdin,可以用来逐行读取文件流,也可用它来在控制台和用户进行一些交互。

阅读全文

readline模块和fs模块制作的文件内容查找程序

 2015年06月30日    442
readline模块和fs模块制作的文件内容查找程序

使用Node.js原生readline模块和fs模块制作的文件内容查找程序,可用于文本文件内容的查找,例如:在网站日志中查找指定内容等。本程序通过控制台与用户进行简单交互,用户可根据提示输入查询内容,查询完成后用户可根据提示进行下一步查询或退出程序。程序通过readline模块与用户进行交互及逐行查找,使用fs模块创建文件可读流。

阅读全文

Node.js异步异常处理模块domain的相关介绍

 2015年06月29日    329

Node.js的domain模块可以捕捉处理try catch无法捕捉的,回调函数中的异步异常,这对于提高Node.js程序的健壮性有很大帮助。上篇介绍了使用domain模块捕获Node.js异步异常的基本用法,本将结合domain模块API做进一步介绍。

阅读全文

用domain模块进行Node.js异步异常捕获处理

 2015年06月28日    512

对于一般的错误可以用try catch进行异常捕捉处理,但是try catch无法捕捉到Node.js异步回调函数中的异常,这会对程序的健壮性造成一定影响,回调函数中的异常可能导致Node进程的结束。对于回调函数中的异常,可以使用Node.js的domain模块进行捕捉处理。注册到domain中的事件组,在出现错误或抛出异常时,会被通知到domain对象中而不是直接被process.on('uncaughtException')处理,因此也不会导致进程退出。

阅读全文

使用Node.js的断言模块assert进行单元测试

 2015年06月27日    1007

单元测试对于及早发现代码问题、定位问题,有其它测试不可替代的作用。做好单元测试在代码的可维护性、代码重构及后期功能扩展方面,都有极重要的意义。对于Node.js来说,有很多第三方自动化测试模块,如:mocha。本文主要介绍,Node.js提供的编写单元测试用例的模块,assert断言模块。

阅读全文

使用Node.js自带的V8调试器调试Node程序

 2015年06月25日    690

Node程序的调试不太容易,Node没有专用的调试程序,但Node使用的V8引擎提供了一个强大的调试器,可以通过 TCP 协议从外部访问。Node内置了这个调试器的客户端,可以方便的对Node程序进行断点、跟踪等调试。

阅读全文