首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

深入理解Node.js进程进程

通过process.cwd()可以获取当前工作目录。通过process.chdir(directory)可以切换当前工作目录,失败后会抛出异常。...在调用 'exit' 事件监听器之后,Node.js 进程将立即退出,从而导致在事件循环中仍排队任何其他工作被放弃。process 标准流对象process 提供了 3 个标准流。...本文从以下几个方面介绍 child_process 模块使用:创建进程父子进程通信独立进程进程管道创建进程nodejs child_process 模块创建进程方法:spawn, fork...如果想让父进程先退出,不受到进程影响,那么应该:调用 ChildProcess 对象上unref()options.detached 设置为 true进程 stdio 不能是连接到父进程main.js...这意味着可以通过监听其上 data事件,在父进程中获取进程 I/O 。

1.9K21

使用Node.js、pm2和ssh2模块实现一个简单Node.js项目部署脚本

('dotenv').config();其中,fs模块是Node.js内置文件系统模块,用来读写文件;Client是ssh2模块提供一个类,用来创建SSH连接;dotenv模块是用来加载.env文件中配置信息到...一个内置模块,它可以同步地执行一个进程,并返回进程输出。...这样可以避免异步回调地狱,也可以保证构建顺序和正确性。stdio 参数是用来控制进程输入输出,它可以是一个数组或一个字符串。...如果是一个数组,那么它表示进程标准输入、标准输出和标准错误流。如果是一个字符串,那么它表示进程所有流模式。...inherit 表示进程流和父进程流相同,也就是说,进程输出会显示在父进程控制台中。

25910
您找到你想要的搜索结果了吗?
是的
没有找到

GitHub Pages和Hexo搭建个人博客小站

安装Node.js 首先下载稳定版 Node.js官网 下载完,安装一路next。 最后安装好之后,按Win+R打开命令提示符,输入node -v和npm -v,如果出现版本号,那么就安装成功了。...user.email "你GitHub注册邮箱" 生成ssh密钥文件: ssh-keygen -t rsa -C "你GitHub注册邮箱" 然后直接三个回车即可,默认不需要设置密码 然后找到C:.../Users/(yourname)/.ssh文件夹中id_rsa.pub密钥,将内容全部复制 打开GitHub-Settings-SSH and GPG keys 页面,新建new SSH Key,...其中主机记录为你前面创建网站时输入域名(如果site.xxx.com,则域名为site) 记录类型为CNAME 记录值为在github上设置域名(如cordinovet.github.io)...若出现hexo s失败问题,原因可能有二:其一是因为前面在修改配置文件_config.yml时候,可能没配置好,多空格或少空格,其二可能是端口问题,hexo s -p 2333改一下端口后再hexo

46920

使用lodine建立DNS隧道

我们可以在端口53上设置一个SSH服务器或其它类似服务器,但在某些情况下ssh协议会被过滤,从而导致隧道建立失败。因此,通过DNS建立隧道才是我们最好选择。...Iodine由我们在服务器上运行DNS daemon(守护进程)组成,该守护进程侦听传入DNS请求并解包隧道数据。另外,我们还有一个客户端用于处理隧道另一端。...如果你手头已有一个现成域,并希望你iodine服务器能够使用其它服务器,那么你可以先设置域并注册iodine服务器IP,然后将你NS记录指向此域即可。...地址 -P secretpassword 客户端和服务器之间用于身份验证共享密钥详情 10.0.1.1 是服务器将在tun接口客户端上提供IP。...但你会发现此时启动会失败

1.5K40

Github Actions实现项目的CICD

图片 有可能会因为权限问题导致传输失败,比如用root用户创建文件夹,但是workflow用户不是root,那删除文件/夹时可能就会权限报错。...而且node.js 是单进程,报错后后整个服务就寄了,所以需要进程管理工具。(需要使用npm全局安装) 简单说一下可能会用到命令: pm2 start app.js:启动。...last_ssh是在传输文件后执行命令,包括安装依赖,启动node进程等。 first_ssh和last_ssh开头都有两个命令好像是因为我是通过nvm来使用node原因。...图片 有可能会因为权限问题导致传输失败,比如用root用户创建文件夹,但是workflow用户不是root,那删除文件/夹时可能就会权限报错。...而且node.js 是单进程,报错后后整个服务就寄了,所以需要进程管理工具。(需要使用npm全局安装) 简单说一下可能会用到命令: pm2 start app.js:启动。

1.1K30

GitHub防黑客新措施:弃用账密验证Git操作,改用token或SSH密钥,今晚0点执行

萧箫 发自 凹非寺 量子位 报道 | 公众号 QbitAI 还在用账户+密码对GitHubGit操作进行身份验证? 赶紧整个token(令牌)或SSH密钥吧!...8月14号0点(8月13日9:00 PST)开始,在GitHub上执行Git操作就会导致失败GitHub官方表示,这一举措是为了提高Git操作安全性,防止密码撞库等事情发生。.../服务 这些用户不会受影响: 已经采用token或SSH密钥方式验证,即启用双因素身份验证(2FA)用户 使用GitHub Enterprise Server本地产品用户(该产品尚未对此进行更改)...GitHub究竟为什么要这样做呢? token和SSH密钥安全在哪里? 首先需要了解,只用账户和密码进行身份验证会有什么隐患。...现在,GitHub开始强制用户采用token或SSH密钥进行身份验证

1.9K30

提升Node.js性能之SO_REUSEPORT探讨

,所以如果多个进程同时bind同一个IP端口,那么第二个进程就会失败。...2.1 主进程执行bind,这时候底层架构如下。 ? 2.2 主进程fork多个子进程,这时候架构如下。 ? 我们看到,fork之后进程继承了主进程文件描述符fd。...这时候进程不需要执行bind也绑定到了和主进程同样IP和端口。 2.3 进程执行listen修改socket状态为监听状态。这时候就成功地完成了多个进程同时绑定一个IP和端口。...3.3 主进程通过文件描述符传递方式把fd传给进程,架构和2.2中一样。 3.4 进程执行listen。 Node.js中支持1和3这两种方式,具体在Cluster模块实现。...https://github.com/libuv/libuv/pull/3198。 2 性能测试可以参考Nginx这个文章 https://link.zhihu.com/?

93210

Linux 命令(211)—— ssh-agent 命令

当使用 ssh(1) 登录到其他机器时,可通过环境变量定位到代理并使用代理自动进行身份验证。...其实 ssh-agent 就是一个密钥管理器,运行 ssh-agent 以后,使用 ssh-add 将私钥交给 ssh-agent 保管,其他程序需要身份验证时候可以将验证申请交给 ssh-agent...-k 把 ssh-agent 进程杀掉(由环境变量 SSH_AGENT_PID 给出 PID)。...-P 为 PKCS#11 提供程序和 FIDO 身份验证器中间件共享库指定可接受路径模式列表,这些共享库可以与 ssh-add(1) -S 或 -S 选项一起使用...使用 ssh-add(1) 为标识指定生存期将覆盖此值。如果没有这个选项,默认最大生存期是永远。 command [arg ...] 如果给出了命令(和可选参数),它将作为代理进程执行。

1.8K20

nodeIntegrationInSubFrames | Electron 安全

Node.js 代码执行失败了 iframe + window.open 在 Electron 14.0 之前版本是可以执行 因此想要在 iframe 中执行 iframe ,需要 sandbox:...nodeIntegrationInSubFrames 或设置 nodeIntegrationInSubFrames: false 后,即使窗口设置了渲染进程可以执行 Node.js 也不会生效吗?...这听起来就很奇怪,我们测试一下就知道了 我们尝试创建窗口,在主窗口中设置 nodeIntegrationInSubFrames: false ,并在窗口设置渲染进程可以执行 Node.js ,咱们看看到底能不能执行...nodeIntegrationInSubFrames: true 时窗口是否能够读取父窗口 Preload 中内容 获取失败,看起来官方文档中描述 child window 并不是官方文档其他部分中...既然窗口不是指主进程创建窗口之间父子关系,那么和 iframe 比较类似的应该就是 和 WebContentsView 了,还有 HTML 中 object 和 embed

11610

【Rust日报】2022-06-12 wasm-react:用于 React WASM 绑定

GitHub:https://github.com/yishn/wasm-react/ RustSec 咨询数据库可视化 这是RustSec 咨询数据库可视化。我希望它会有所帮助。...//github.com/brxken128/dexios 具有图形界面的文件传输程序 (GSFTP) GitHub:https://github.com/benharmonics/gsftp 它基本上只是一个带有...您可以使用密码或作为参数提供公钥文件通过 SSH 登录。如果您两者都不提供,它会尝试使用您 SSH 身份验证代理中提供第一个公钥文件让您登录 - 这是使用该程序首选方式。...完成身份验证后,您可以上传/下载文件。您无法删除文件-添加恕我直言似乎是一个危险功能?...此外,ssh2箱似乎有一种通过交互式键盘输入进行身份验证方法,但我还没有解决这个问题;目前还不清楚如何使用它。

45120

Node.js-具有示例API基于角色授权教程

该示例基于我最近发布另一篇教程,该教程侧重于Node.jsJWT身份验证,此版本已扩展为在JWT身份验证基础上包括基于角色授权/访问控制。...11月28日-使用Node.js构建 在本地运行Node.js基于角色授权API 1.从https://github.com/cornflourblue/node-role-based-authorization-api...Node.js授权角色中间件 路径:/_helpers/authorize.js 可以将授权中间件添加到任何路由中,以限制对指定角色中经过身份验证用户访问。...sub属性是subject缩写,是用于在令牌中存储项目id标准JWT属性。 第二个中间件功能根据其角色检查经过身份验证用户是否有权访问请求路由。如果验证或授权失败,则返回401未经授权响应。...使用授权中间件路由仅限于经过身份验证用户,如果包括角色(例如authorize(Role.Admin)),则该路由仅限于指定角色/角色用户,否则,如果不包括角色(例如,authorize()),则该路由将限制为所有经过身份验证用户

5.7K10

利用hexo和github或coding 搭免费个人博客

hexo和github搭建 看了许多教程之后,踩了许多坑之后就想总结一下自己搭建过程 开始 环境 Node.js Git npm coding或github 由于我使用主力系统时Ubuntu...,可能得到不同版本,但是有时候可能因为版本不够新而导致hexo等其他包安装失败,所有我们这里最好在使用几条命令更新一下node.js 在已安装好npm情况下使用 sudo npm install...--global user.email "你邮箱" ssh-keygen -t rsa -C “你邮箱” 输入生成key命令之后一般直接按三次回车 设置密码为空 然后cd到.ssh目录下打开...id_rsa.pub,将内容复制添加到github coding公钥vim .ssh/id_rsa.pub 经过以上步骤 基本环境就搭建好了,在linux下安装开发环境还是相当简单。。。。。...:EarthChen/EarthChen.github.io.git 按照上述格式修改你仓库地址 修改连接方式为ssh 这样在推送时候可以不用输入密码 从而使用公钥私钥匹配模式 在国内推荐使用coding

44820

从零实现Github+Vercel部署hexo

,但是总是失败,获取不到,看到评论发现v12.18版本可以实现,但是自己开发需要版本是16版本,所以在考虑是否可以多个版本来回切换呢,所以看了很多总算是可以了:nvm,可以让你在电脑上管理多个版本...> // 卸载node.js是的命令,卸载指定版本nodejs,当安装失败时卸载使用 nvm ls // 显示所有安装node.js版本 nvm list..." git config --global user.email "GitHub 邮箱" 创建 SSH 密匙: 输入 ssh-keygen -t rsa -C "GitHub 邮箱",然后一路回车。...登陆 GitHub ,进入 Settings 页面,选择左边栏 SSH and GPG keys,点击 New SSH key。...(1)首先找到settings (2)SSH and GPG keys—>选择New SSH key (3)填写秘钥【这里Title名字随意,key需要复制自己公钥 id_rsa.pub 文件中所有

1.1K30
领券