Now vibe coding, so learning hammer FE ?
《Node.js官方发布Axios迁移Fetch指南》

标签:#后端 #NodeJS #FetchAPI #Axios #代码迁移 #HTTP请求

总结:
Node.js官方博客发布了一个将Axios代码自动迁移到原生WHATWG Fetch API的codemod工具,详细说明了迁移理由、Node.js版本要求、支持的转换方法及具体代码示例,同时坦诚标注了暂不支持的高级特性。

文章要点:
1. 迁移四大理由:Fetch是Node.js原生内置,无需额外依赖;性能针对现代运行时做了优化;严格遵循Web标准,浏览器和Node.js代码可复用;移除第三方库减少安全风险
2. 版本门槛:Node.js v18起Fetch可用但为实验性,v21起才稳定;如果包还兼容v18以下,迁移必须升主版本号并修改package.json的engines字段
3. 支持的转换方法覆盖很全,包括get、post、put、patch、delete、head、options、request以及postForm/putForm/patchForm等表单提交方式
4. 转换后的Fetch代码会用Object.assign(res, { data: await res.json() })来模拟Axios的response.data结构,让迁移后的代码改动最小化
5. 目前暂不支持拦截器、取消令牌和axios.create()实例配置等高级特性,这些场景需要手动处理
6. 官方对Axios维护者表达了感谢,认可其对生态的贡献

URL:
https://nodejs.org/en/blog/migrations/axios-to-fetch
《Express全新面貌》

标签:#后端 #NodeJS #ExpressJS #Web框架 #文档重构 #开源社区

总结:
Express官方博客宣布完成网站全面重构与品牌焕新,涵盖Astro技术栈迁移、AI智能搜索、版本化文档及全新Logo设计,标志着这个Node.js生态老牌框架在2024年重启后进入新阶段。

文章要点:
1. 网站底层从Jekyll迁移到Astro,带来更灵活的组件模型、国际化支持和内容页性能提升,文档生成与维护方式也一并升级
2. 文档新增多版本并行浏览,Express 4和5的文档可以独立查看,告别版本混淆的烦恼
3. 搜索接入了Orama的AI能力,支持自然语言提问,找API和概念更快更准
4. 全站文档开放了llms.txt端点,方便大模型和AI助手直接读取最新文档
5. 接下来的重点是补齐内容缺口、完善多语言翻译,并让文档和新版本同步发布
6. 新Logo由社区公开协作设计,品牌定位为"Established·Dependable·Approachable",延续极简风格的同时开启新篇章

URL:
https://expressjs.com/en/blog/2026-05-18-a-new-look-for-express/ A New Look for Express · Express.js
《Obscura:专为AI代理和爬虫打造的轻量级无头浏览器》

标签:#后端 #Rust #HeadlessBrowser #WebScraping #AI_Agent #Chrome_DevTools_Protocol #Puppeteer #Playwright #Anti_Detection

总结:
Obscura是一款基于Rust编写的开源无头浏览器引擎,专为大规模网页抓取和AI自动化场景设计。它通过内置V8引擎运行真实JavaScript,完整支持Chrome DevTools Protocol,可直接替代Puppeteer和Playwright依赖的Headless Chrome,在内存占用(30MB vs 200MB+)、启动速度和反检测能力上具有显著优势。

文章要点:
- **极致轻量,资源友好**:相比Headless Chrome动辄200MB+的内存占用和300MB+的体积,Obscura仅需30MB内存和70MB二进制文件,启动几乎瞬时完成,页面加载速度提升约6倍
- **零依赖,开箱即用**:无需安装Chrome或Node.js,单个二进制文件即可运行,支持Linux、macOS(Intel/Apple Silicon)和Windows平台
- **无缝兼容现有生态**:完整实现Chrome DevTools Protocol,可作为Puppeteer和Playwright的底层浏览器直接连接使用,现有爬虫脚本迁移成本低
- **内置隐身模式**:自带反指纹追踪(随机化GPU、屏幕、Canvas等参数)和3520个域名级别的追踪器拦截,无需额外配置即可绕过常见反爬机制
- **并行爬取能力**:提供`obscura scrape`命令支持多URL并发抓取,配合`--concurrency`参数可灵活控制worker数量,适合批量数据采集场景
- **开源承诺与商业化路径**:核心引擎采用Apache 2.0协议且承诺永不功能阉割,同时正在开发托管版Obscura Cloud提供代理和基础设施服务

文章URL:
https://github.com/h4ckf0r0day/obscura GitHub - h4ckf0r0day/obscura: The headless browser for AI agents and web scraping
《我们将 Node.js 内存占用减少了一半》

标签:#后端 #Node.js #V8 #性能优化 #内存管理 #Docker

本文介绍了通过启用 V8 引擎的指针压缩(Pointer Compression)技术,在不修改代码的情况下将 Node.js 应用内存占用减少约 50%,且仅带来 2-4% 的平均延迟开销,同时显著降低 P99 延迟。Cloudflare 与 Igalia 合作解决了历史性的"4GB 内存笼"限制,使每个 Worker 线程拥有独立的 4GB 压缩内存空间。

文章要点:
- 技术原理:指针压缩将 64 位指针转为 32 位偏移量,使每个指针从 8 字节减至 4 字节,内存占用减半,代价是每次堆访问需额外的加减法运算
- 历史障碍:此前 Node.js 未默认启用是因所有 Worker 线程共享单一 4GB 内存空间,2024 年 Cloudflare 与 Igalia 合作推出 IsolateGroups 功能,使每个 V8 实例拥有独立的 4GB 压缩内存笼
- 实验结果:在 Next.js 电商应用基准测试中,指针压缩实现内存减半(2GB→1GB),平均延迟仅增加 2.5-4.2%,但 P99 延迟降低 7-43%,最大延迟降低 6-38%,因更小的堆减少了 GC 暂停时间
- 业务价值:可显著降低 Kubernetes 集群成本、提升多租户 SaaS 密度、支持边缘计算部署、增加 WebSocket 并发连接数
- 兼容性限制:每个 V8 实例仍受 4GB 堆内存限制;使用旧版 NAN 的原生插件不兼容,但 Node-API 插件不受影响
- 使用方式:通过 platformatic/node-caged Docker 镜像一键替换官方 Node.js 镜像即可启用

链接:https://blog.platformatic.dev/we-cut-nodejs-memory-in-half
 
 
Back to Top