随笔分类 -  node

摘要:一、前言 ​ 通常我们在做ServerLess的时候会想到用各种云的Faas服务,比如腾讯云,AWS,阿里云等等。但我们很少去研究自己怎么搭建一个ServerLess服务。本篇文章重点会讲解如何自己在服务器上搭建ServerLess服务,并如何使用它。 二、什么是ServerLess? ​ Serv 阅读全文
posted @ 2022-07-22 20:10 苍青浪 阅读(800) 评论(0) 推荐(0) 编辑
摘要:做过后端研发的基本对接口限频完全不陌生,特别是针对一些核心接口受到攻击的时候,比如 Jmeter 来通过一些用户填写接入恶意灌入脏数据。 那在 nodejs 这边如何设计限频接口呢? 基于 express 的 express-rate-limit 源码地址: https://github.com/n 阅读全文
posted @ 2022-07-21 10:27 苍青浪 阅读(1040) 评论(0) 推荐(0) 编辑
摘要:1. 基本概念 1.1. 流的历史演变 流不是 Node.js 特有的概念。它们是几十年前在 Unix 操作系统中引入的,程序可以通过管道运算符(|)对流进行相互交互。 在基于 Unix 系统的 MacOS 以及 Linux 中都可以使用管道运算符(|),它可以将运算符左侧进程的输出转换成右侧的输入 阅读全文
posted @ 2022-03-03 20:19 苍青浪 阅读(257) 评论(0) 推荐(0) 编辑
摘要:Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境。早期的 Node.js 采用的是 CommonJS 模块规范,从 Node v13.2.0 版本开始正式支持 ES Modules 特性。直到 v15.3.0 版本 ES Modules 特性才稳定下来并与 N 阅读全文
posted @ 2022-02-08 17:05 苍青浪 阅读(320) 评论(0) 推荐(0) 编辑
摘要:Puppeteer是 Google Chrome 团队官方的 Headless Chrome 工具,平时常用它来完成一些烦杂的重复性工作,也写过一些爬虫,在浏览器中手动完成的大部分事情都可以使用 Puppeteer 完成。也算是测试同学手中的一大利器吧。 安装 就按管方文档中来吧,主要就是设置两个环 阅读全文
posted @ 2022-01-22 07:57 苍青浪 阅读(4930) 评论(0) 推荐(0) 编辑
摘要:前言 最近优化了几个新人写出的动态表格文件下载接口的性能瓶颈,感觉非常有必要总结一篇文章作为文档来抛砖引玉,以促进大家学习一起写出更专业的代码。 HTTP 文件下载 讲具体问题之前需要先了解一些 HTTP 基础,下面简单介绍一下用 Node.js&Koa 怎么实现文件下载。 参考: rfc2616 阅读全文
posted @ 2022-01-12 10:38 苍青浪 阅读(443) 评论(0) 推荐(0) 编辑
摘要:导语 通过这篇文章可以大致了解 Whistle 的实现原理,并学习如何实现一个简单的抓包调试工具。 项目 Github 地址:https://github.com/avwo/whistle Whistle 是基于 Node.js 实现的跨平台 Web 抓包调试(HTTP)代理,主要功能: 实时抓包: 阅读全文
posted @ 2021-12-09 10:34 苍青浪 阅读(851) 评论(0) 推荐(0) 编辑
摘要:管理依赖是一个复杂软件开发过程中必定会遇到的问题。 在Node.js项目开发的时候,我们也经常需要安装和升级对应的依赖。虽然 npm 以及语意化的版本号 (semantic versioning, semver) 让开发过程中依赖的获取和升级变得非常容易, 但不严格的版本号限制,也带来了版本号的不确 阅读全文
posted @ 2021-11-30 10:36 苍青浪 阅读(979) 评论(0) 推荐(0) 编辑
摘要:全链路追踪技术的两个核心要素分别是 全链路信息获取 和 全链路信息存储展示。 Node.js 应用也不例外,这里将分成两篇文章进行介绍;第一篇介绍 Node.js 应用全链路信息获取, 第二篇介绍 Node.js 应用全链路信息存储展示。 一、Node.js 应用全链路追踪系统 目前行业内, 不考虑 阅读全文
posted @ 2021-11-30 10:05 苍青浪 阅读(443) 评论(0) 推荐(0) 编辑
摘要:用 Node 写服务端的时候,比较头疼的是排查定位问题,因为不像 Chrome 浏览器中,我们有直接的报错提示在 dev tool 中,或者我们可以直接打断点调试。 经常我们会遇到在明明我在 test 环境可以啊,为什么 live 环境不行的问题。假如没有日志,对于这种问题,根据毫无头绪。 所以这篇 阅读全文
posted @ 2021-10-28 10:31 苍青浪 阅读(620) 评论(0) 推荐(0) 编辑
摘要:Node.js 提供的 Inspector 非常强大,不仅可以用来调试 Node.js 代码,还可以实时收集 Node.js 进程的 Heap Snapshot、Cpu Profile 等数据,同时支持静态、动态开启,是一个非常强大的工具,也是我们调试和诊断 Node.js 进程非常好的方式。本文从 阅读全文
posted @ 2021-08-24 09:35 苍青浪 阅读(1156) 评论(0) 推荐(0) 编辑
摘要:Node.js 是一个 Javascript 的运行时,提供了系统能力的 api,主要是文件、网络相关的 IO api,而 IO api 的实现是在 libuv,提供了同步异步两种形式的 api。 本来就来探究下 libuv 的功能和提供的 api 的形式。 同步异步、事件循环 cpu 是顺序执行代 阅读全文
posted @ 2021-08-23 09:35 苍青浪 阅读(367) 评论(0) 推荐(0) 编辑
摘要:学习 nodejs 最重要的是什么?可能每个人都有自己的答案。 我觉得学习 nodejs 除了要掌握基础的 api、常用的一些包外,最重要的能力是学会使用 debugger。因为当流程复杂的时候,断点调试能够帮你更好的理清逻辑,有 bug 的时候也能更快的定位问题。 狼叔说过,是否会使用 debug 阅读全文
posted @ 2021-07-07 15:28 苍青浪 阅读(175) 评论(0) 推荐(0) 编辑
摘要:项目地址 这个项目很神奇,直接将node.js项目打包成windows可以直接执行的exe文件(也支持FreeBSD、linux、macos、arm系统),甚至不需要安装Node.js,且无须修改你项目中的任何代码! 首先安装pkg npm install -g pkg 然后在项目目录下执行 pkg 阅读全文
posted @ 2021-05-19 15:31 苍青浪 阅读(3691) 评论(1) 推荐(0) 编辑
摘要:GitHub: https://github.com/zeit/ncc ncc 是一个简单的 CLI 工具,可以一键把一个 Node.js 项目编译打包成单个 JS 文件。 安装 npm i -g @zeit/ncc 使用 例如我们有一个项目引入了 chalk 包,首先安装 NPM 依赖: cd m 阅读全文
posted @ 2021-05-19 15:05 苍青浪 阅读(5490) 评论(0) 推荐(0) 编辑
摘要:文件系统 这些工具包的功能就是在 Node 本身的 fs 模块基础上提供更加方便的文件系统操作 API。 glob 一句话介绍 glob 是一种文件匹配模式,起源于 Unix,比如我们常见 *.js 匹配所有 js 文件就是使用了 glob 模式。 GitHub 地址:https://github. 阅读全文
posted @ 2021-05-12 20:18 苍青浪 阅读(1490) 评论(0) 推荐(1) 编辑
摘要:JavaScript 程序越来越复杂,调试工具的重要性日益凸显。客户端脚本有浏览器,Node 脚本怎么调试呢? 2016年,Node 决定将 Chrome 浏览器的"开发者工具"作为官方的调试工具,使得 Node 脚本也可以使用图形界面调试,这大大方便了开发者。 本文介绍如何使用 Node 脚本的调 阅读全文
posted @ 2021-04-29 16:43 苍青浪 阅读(214) 评论(0) 推荐(0) 编辑
摘要:Puppeteer 是 Chrome 开发团队在 2017 年发布的一个 Node.js 包,用来模拟 Chrome 浏览器的运行。我们团队从 Puppeteer 刚发布出来就开始成为忠实用户了(主要是因为 PhantomJs 坑太多了),本文主要在介绍 Puppeteer 的同时,结合我们平时的实 阅读全文
posted @ 2021-03-28 10:52 苍青浪 阅读(1593) 评论(0) 推荐(0) 编辑
摘要:使用 node.js + ffmpeg 实现视频转动图接口服务,利用 child_process 执行 ffmpeg 命令行实现,理论上可以ffmpeg所有功能。 环境 ffmpeg 官网下载 node 中文网下载 依赖包 使用npm 安装所需的依赖包 # npm npm install expre 阅读全文
posted @ 2021-03-16 18:18 苍青浪 阅读(2002) 评论(0) 推荐(0) 编辑
摘要:简介 Node.js 有多重并发的能力,包括单线程异步、多线程、多进程等,这些能力可以根据业务进行不同选择,帮助提高代码的运行效率。 本文希望通过读 p-limit、pm2 和 worker_threads 的一些代码,来了解 Node.js 的并发能力。 版本说明 Node.js 15.4.0 N 阅读全文
posted @ 2021-03-10 09:04 苍青浪 阅读(2823) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示
哥伦布
03:14发布
哥伦布
03:14发布
7°
多云
西南风
3级
空气质量
相对湿度
64%
今天
多云
-1°/10°
周三
小雨
2°/12°
周四
中雨
2°/14°