有趣的 Async hooks 模块

在 Node.js 中,Async hooks 是一个非常有意思且强大的模块(虽然性能上存在一些问题),在 APM 中,我们可以借助这个模块做很多事情。本文介绍两个有趣的用法。 AsyncLocalS...
2年前
120

新一代包管理工具 Pnpm

如果你从事过前端方面的工作和开发,相信你对 npm 和 yarn 这样的工具已经再熟悉不过了。作为包管理工具,npm 已经有了长足的历史[1]。一个项目初始化过程都需要通过 npm install 命...
3年前
460

写给前端的 K8S 上手指南

,在回答这个问题之前,让我们一起先了解下 web 应用部署方式的演化过程。,在我刚接触软件开发的时候,人们部署应用的方式通常是这样的:,首先需要一台服务器,然后在服务器上安装 Web Server ...
3年前
350

npm,pnpm,yarn,npx的那些事儿

最早发布的包管理器是 npm,他在 2010 年 1 月就已经发布了。它确立了包管理器工作的核心原则。,npm 的发布诞生了一场革命,在此之前,项目依赖项都是手动下载和管理的。npm 引入了文件和元数...
3年前
220

图解 Node.js 的核心 Event-loop

,这次我们来聊聊 Node.js 里面涉及到的一个核心概念:event-loop 。只有理解了它,才能明白 node 的进程模型,也才能明白异步调用在实现层面是什么样子的,更能明白当同步代码和异步代码...
4年前
420

如何优雅地 Hack 用户的代码

前言:做基础技术的时候,会经常碰到一个问题就是如何让自己提供的代码对用户少侵入,无感。比如我提供了一个 SDK 收集 Node.js 进程的 HTTP 请求耗时,最简单的方式就是给用户提供一个 req...
4年前
150

如何追踪 JS 对象是否被 GC

在自带垃圾回收的语言中,开发者往往不需要过多地关注内存管理。但是不代表我们可以完全忽略它。因为语言引擎的垃圾回收是有一定的判断规则的,如果我们的变量所引用的内存没有符合这个规则,那么引擎无无法对这些内...
4年前
170

使用 Node.js 构建博客 API

,在本文中,我们将使用 Node.js 构建一个简单的博客 API。 API代表“应用程序编程接口”,它允许不同的软件系统相互通信。 在这种情况下,我们的博客 API 将允许我们创建、读取、更新和删除...
4年前
760

Node.js C++ 层的任务管理

好久没更新了,今天写个笔记。,我们都知道 Node.js 是基于事件循环来运行的,本质上是一个生产者 / 消费者模型,所以就少不了任务的管理机制,不过本文不是介绍事件循环中的任务管理,而是 C++ 层...
4年前
230