详解Node.js的http模块之http模块概述

 2015年08月24日    2744

http模块是Node.js中非常重要的一个核心模块。通过http模块,你可以使用其http.createServer方法创建一个http服务器,也可以使用其http.request方法创建一个http客户端。Node对HTTP协议及相关API的封装比较底层,其仅能处理流和消息,对于消息的处理,也仅解析成报文头和报文体,但是不解析实际的报文头和报文体内容。这样不仅解决了HTTP原本比较难用的特性,也可以支持更多的HTTP应用。

阅读全文

Node.js站群管理系统的实现之增加多服务器节点支持、进程重启、npm包安装、实时日志查看

 2015年08月22日    395
Node.js站群管理系统的实现之增加多服务器节点支持、进程重启、npm包安装、实时日志查看

本系统基于Socket.io和Node.js的child_process模块,Web框架使用express。上一个版本中,实现了基本的更新操作,只适用于静态HTML站点的管理。随着公司业务的增长,有两个站点做了SLB,这样站点每更新一次都要登录多台服务器,还要pull代码、重启进程。为了简化更新步骤,实现运维自动化,在这一版本,增加或优化了这些功能:实时日志查看、多服务器节点支持、进程重启、npm包安装。

阅读全文

Node.js与DNS域名解析dns模块介绍

 2015年08月19日    1331

DNS(Domain Name System,域名系统),DNS协议运行在UDP协议之上,使用端口号53。DNS是因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。简单的说,就是把域名(网址)解析成对应的IP地址。Node.js的dns模块,提供了DNS解析功能。当使用dns模块中的net.connect(80, 'itbilu.com')方法 或 http模块的http.get({ host: 'itbilu.com' })方法时,在其底层会使用dns模块中的dns.lookup 方法进行域名解析。

阅读全文

Node.js用户数据报dgram模块创建的UDP对象中的方法和事件

 2015年08月18日    557

UDP是一个轻量级的传输协议,在降低连接可靠性限制后,它比TCP负载要小的多并且可以广播和多播。在Node.js中,如果想要发送或接收UDP消息,首先要使用dgram模块创建一个UDP套接字对象,此对象可以用来发送消息给其它UDP服务器。在UDP并没有真正的服务器,只有在套接字监听消息的终端。如果要监听传入消息,就需要将套接字对象绑定到一个UDP端口上,然后监听message消息。

阅读全文

Node.js用户数据报dgram模块的使用

 2015年08月13日    1407

用户数据报协议(User Datagram Protocol,UDP)和TCP协议一样,都在传输层,位于IP协议之上。TCP是一个面向连接的协议,它在网络节点之间提供可靠有序的数据流。与TCP不同,UDP允许你向其它主机发送消息(数据报),而不需要提前建立连接。由于UDP的无状态性,不用像TCP那样面向连接,所以UDP相对轻量,这对于服务器响应来向大量客户端的查询非常有用。与TCP相比,UDP的另一个优势是支持消息的广播和多多播。在Node.js中,dgram模块用来支持和实现UDP用户数据报协议。

阅读全文

Node.js对TCP/Socket的实现之net模块TCP客户端详解

 2015年08月10日    2348

使用Node.js的net模块可以很容易的构建一个TCP客户端,TCP客户端可以用来连接至TCP服务端。建立TCP连接后,两者之间会基于流进行数据交互,一个是接收数据的可读流,一个是发送数据的可写流。创建TCP客户端可以使用构造函数net.Socket()或使用net. createConnection()net. connect())方法。

阅读全文

Node.js对TCP/Socket的实现之net模块TCP服务端详解

 2015年08月08日    1311

net模块可以创建TCP服务端,也可以创建TCP服务端客户端。创建一个TCP服务器,可以使用构造函数new net.Server()或使用其工厂方法net.createServer,这两种方法都会返回一个net.Server类,net.Server类继承了events,所以它也是个事件发射器。

阅读全文

Node.js对TCP/Socket的实现之net模块的使用

 2015年08月06日    4819

传输控制协议(Transmission Control Protocol,TCP)是Internet的基础协议之一,它位于IP协议之上,为应用层提供了一种可靠的传输机制,它基于三次握手协议建立连接。TCP是一种面向连接的协议,这意味着通信的两个终端之间需要建立专门的连接,该连接之间是双向的。Node.js中的net模块提供了对TCP协议的封装,使用net模块可以轻松的构建一个TCP服务器,或构建一个连接TCP服务器的客户端。

阅读全文

Node.js与网络:Node.js对TCP、UDP、Socket、HTTP等协议的实现和支持

 2015年08月05日    2219

OSI七层模型是不同计算机或通信系统间互联的标准体系和框架,在OSI中包括一系列标准和协议,如:TCP/IP、UDP、HTTP等,在Node.js中提供了对这些协议的实现和支持,如:net模块提供了对TCP、Socket的封装和支持,dgram模块提供了对UDP的封装和支持、http模块进一步封装了TCP协议提供了对HTTP的支持。本文对网络中相关协议、概念及Node.js中对相关协议的实现模块做简单介绍,后续会有对具体介绍模块及其功能文章。

阅读全文

Node.js计算文件md5或sha1等哈希值

 2015年07月30日    6056

前几天学习整理了Node.js的crypto模块,crypto模块实现了OpenSSL中相关加密码技术,可以用于文件啥希值计算、加密、解密、验证等。最近要做APP升级功能,为了验证APP文件的完整性,需要在服务端计算文件的MD5值,APP升级时会对文件的MD5值进行较验。

阅读全文