【用C/C++来实现Node.js的模块(一)_node.js】教程文章相关的互联网学习教程文章

详解node.js的http模块实例演示【图】

上世纪六七十年代,红岸基地一直在向茫茫外太空发送讯号,当叶文洁通过太阳作为广播,将地球的讯号向外发送时,宇宙的各个先进文明都接收到了讯号,其中就包括了离我们最近的三体星。 本篇用node.js的http模块模拟这一事件。 let http = require(http) // 创建一个web服务器 let server = http.createServer()server.on(request, function () {console.log(我们接收到了一个用原始膜发送讯号的文明,这个文明竟然完全不知道宇宙的黑...

Node.js中的child_process模块详解

前言 本文主要给大家介绍了关于Node.js中child_process模块的相关内容,在介绍child_process模块之前,先来看一个例子。const http = require(http); const longComputation = () => {let sum = 0;for (let i = 0; i < 1e10; i++) {sum += i;};return sum; }; const server = http.createServer(); server.on(request, (req, res) => {if (req.url === /compute) {const sum = longComputation();return res.end(`Sum is ${sum}`);...

Node.js中的cluster模块深入解读

预备知识在如今机器的CPU都是多核的背景下,Node的单线程设计已经没法更充分的"压榨"机器性能了。所以从v0.8开始,Node新增了一个内置模块——“cluster”,故名思议,它可以通过一个父进程管理一坨子进程的方式来实现集群的功能。 学习cluster之前,需要了解process相关的知识,如果不了解的话建议先阅读process模块、child_process模块。cluster借助child_process模块的fork()方法来创建子进程,通过fork方式创建的子进程与父进程...

Node.js笔记之process模块解读【图】

process存在于全局对象上,不需要使用require()加载即可使用,process模块主要做两方面的事情 读:获取进程信息(资源使用、运行环境、运行状态)写:执行进程操作(监听事件、调度任务、发出警告)资源使用资源使用 指运行此进程所消耗的机器资源。例如内存、cpu 内存 process.memoryUsage()){ rss: 21848064,heapTotal: 7159808,heapUsed: 4431688,external: 8224 }rss(常驻内存)的组成见下图code segment对应当前运行的代码 ext...

浅析node.js的模块加载机制

在node.js中,模块使用CommonJS规范,一个文件是一个模块 node.js中的模块可分为三类 内部模块 - node.js提供的模块如 fs,http,path等自定模块 - 我们自己写的模块第三方模块 - 通过npm安装的模块node.js提供了大量的模块供我们使用,比如 想解析一个文件的路径,可以使用path模块下的相应方法实现: const path = require(path); //返回目标文件的绝对路径 console.log(path.resolve(./1.txt));运行结果:/Users/cuiyue/workspace...

Node.js进阶之核心模块https入门

模块概览 这个模块的重要性,基本不用强调了。在网络安全问题日益严峻的今天,网站采用HTTPS是个必然的趋势。 在nodejs中,提供了 https 这个模块来完成 HTTPS 相关功能。从官方文档来看,跟 http 模块用法非常相似。 本文主要包含两部分: 通过客户端、服务端的例子,对https模块进行入门讲解。如何访问安全证书不受信任的网站。(以 12306 为例子)篇幅所限,本文无法对 HTTPS协议 及 相关技术体系 做过多讲解,有问题欢迎留言交...

深入剖析Node.js cluster模块【图】

cluster模块概览 node实例是单线程作业的。在服务端编程中,通常会创建多个node实例来处理客户端的请求,以此提升系统的吞吐率。对这样多个node实例,我们称之为cluster(集群)。 借助node的cluster模块,开发者可以在几乎不修改原有项目代码的前提下,获得集群服务带来的好处。 集群有以下两种常见的实现方案,而node自带的cluster模块,采用了方案二。 方案一:多个node实例+多个端口 集群内的node实例,各自监听不同的端口,再...

Node.js模块全局安装路径配置方法

下载安装NodeJS后,在自己选择的路径下会有如下的文件: 默认情况下NodeJS安装会同时安装npm(模块管理器:用于管理用户require的模块,有全局和本地两种)。 注: 全局:执行npm install <模块的名字> -g 就会将模块装在全局路径下,当用户在程序中require(<模块的名字>)的时候不用考虑模块在哪,如果不修改全局路径,用户下载的模块会默认在C:\Users\Administrator\AppData\Roaming\npm这个路径下。 局部:执行npm install <包的...

完美解决linux下node.js全局模块找不到的情况

今天在在linux上用npm安装了pm2准备部署node项目,结果通过pm2命令启动项目的时候报pm2找不到,这很伤,以为pm2没有安装成功,但是在node安装目录下面的bin文件夹里面调用pm2却没问题。 /usr/local/node/node-v7.3.0-linux-x64/bin/pm2 list类似这样调用pm2 list命令查看pm2启动的项目没有任何问题。 原来linux系统上通过npm全局安装了模块以后,不能像windos下面那样自动配置环境变量,需要自己动手配置。。。好吧,自己动手吧。...

解决Nodejs全局安装模块后找不到命令的问题

碰到了这问题,记录一下,看提示应该是环境变量的问题,执行如下命令得到Nodejs的模块安装路径: npm prefix -g将输出的全局安装路径加入的环境变量的Path条目中即可。 以上这篇解决Nodejs全局安装模块后找不到命令的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

详解通过源码解析Node.js中cluster模块的主要功能实现

众所周知,Node.js中的JavaScript代码执行在单线程中,非常脆弱,一旦出现了未捕获的异常,那么整个应用就会崩溃。这在许多场景下,尤其是web应用中,是无法忍受的。通常的解决方案,便是使用Node.js中自带的cluster模块,以master-worker模式启动多个应用实例。然而大家在享受cluster模块带来的福祉的同时,不少人也开始好奇: 为什么我的应用代码中明明有app.listen(port);,但cluter模块在多次fork这份代码时,却没有报端口已被...

解决linux下node.js全局模块找不到的问题

今天在在linux上用npm安装了pm2准备部署node项目,结果通过pm2命令启动项目的时候报pm2找不到,这很伤,以为pm2没有安装成功,但是在node安装目录下面的bin文件夹里面调用pm2却没问题。 /usr/local/node/node-v7.3.0-linux-x64/bin/pm2 list类似这样调用pm2 list命令查看pm2启动的项目没有任何问题。 原来linux系统上通过npm全局安装了模块以后,不能像windos下面那样自动配置环境变量,需要自己动手配置。。。好吧,自己动手吧。。...

nodeJS模块简单用法示例【图】

本文实例讲述了nodeJS模块简单用法。分享给大家供大家参考,具体如下: 1.定义Student模块,Teacher模块 function add(student){console.log(Add Student:+student); } exports.add=add; function add(teacher){console.log(Add Teacher:+teacher); } exports.add=add;2.定义kclass模块 //引入student模块 var student=require(./student); //引入teacher模块 var teacher=require(./teacher.js); function add(teacherName,studen...

Node.js中DNS模块学习总结

1. DNS在Node.js中,提供DNS模块,以实现域名查找及域名解析的处理。 在DNS模块中,提供了三个主方法及一系列便捷方法。resolve方法:用于将一个域名解析为一组DNS记录。reverse方法: 用于将IP地址转换为一组域名。lookup方法: 用于将一个域名转换成IP地址。DNS模块中的其余便捷方法均为resolve方法的一种便捷形式。2. 使用resolve方法将域名解析为DNS记录`DNS.resolve(domain, [rrtype], callback(err, address){...})`domain参数为...

Node.js readline模块与util模块的使用

1. 使用readline模块逐行读取流数据1.1. 创建Interface对象在readline模块中,通过Interface对象的使用来实现逐行读取流数据的处理。因此首先要创建Interface对象,在readline模块中,可以通过createInterface方法来创建Interface对象.readline.createInterface(options),options为一个对象,属性如下 input: 属性值为一个可用来读取流数据的对象,用于指定读入数据的来源。output: 属性值为一个可用来写入流数据的对象,用于指定数...