zoukankan      html  css  js  c++  java
  • 读书笔记《七天学会NodeJS》(3)

    0. 进程
        Node进程主要用来控制处理自身进程运行环境和状态,也可创建新的进程以协同处理某些任务,此时充当调度器作用。
        
    1. process全局对象,表示当前NodeJS自身进程的对象。
    2. child_process子进程模块,可创建和控制子进程,child_process.spawn创建进程(三个参数分别为可执行文件路径、命令行参数、配置子进程的执行环境与行为),此外exec等API对其进行封装。
    3. cluster模块,对child_process模块的进一步封装,可简化多进程服务器的开发,充分利用多核,通过主进程监听端口和分发请求。
    4. 其他
        process.argv可获取进程的命令行参数,不过argv[0]和argv[1]分别占据了node可执行文件路径和主模块文件名路径,故而真正的参数argv[2]开始的。
        process.exit退出进程并设置退出错误码。
        process.stdin、process.stdout、process.stderr分别为标准输入流和标准输入流、标准错误流。
        nodejs进程间通信可通过IPC机制实现,即通过spawn函数的第三个参数设置option.stdio选项为ipc,即stdio: [ 0, 1, 2, 'ipc' ],其中0,1,2分别为标准输入、输出、错误流。
        守护进程:一般用于监控工作进程的运行状态,在工作进程不正常退出时重启工作进程,保障工作进程不间断运行,
        守护进程的一种实现方式(daemon.js):
            function spawn(mainModule) {
                var worker = child_process.spawn('node', [ mainModule ]);
    
                worker.on('exit', function (code) {
                if (code !== 0) {
                    spawn(mainModule);
                }
                });
            }
        spawn('worker.js');。
        
        ......
  • 相关阅读:
    Mac修改默认的电子邮箱客户端
    记录下生活:ETC卡充值(上海)
    Mac下卸载Mysql数据库
    网络爬虫学习笔记 1
    Clock置换算法
    用random.randint函数时 报错 'str' object cannot be interpreted as an integer问题
    分页式存储管理
    初学C++ vector 容器
    马一个讲devc++调试讲的很好的视频
    一些笔记(xss 跨站脚本攻击)
  • 原文地址:https://www.cnblogs.com/haomiao/p/11650450.html
Copyright © 2011-2022 走看看