⭐⭐⭐ Spring Boot 项目实战 ⭐⭐⭐ Spring Cloud 项目实战
《Dubbo 实现原理与源码解析 —— 精品合集》 《Netty 实现原理与源码解析 —— 精品合集》
《Spring 实现原理与源码解析 —— 精品合集》 《MyBatis 实现原理与源码解析 —— 精品合集》
《Spring MVC 实现原理与源码解析 —— 精品合集》 《数据库实体设计合集》
《Spring Boot 实现原理与源码解析 —— 精品合集》 《Java 面试题 + Java 学习指南》

摘要: 原创出处 mp.weixin.qq.com/s?__biz=MzA4NzgyMTI0MA==&mid=2649529426&idx=1&sn=c9426282e59c70a0860b3008c2873e1b&poc_token=HFlYv2mjQXT4KSdK4iEnqrPlxd5eMmXfK3fRc-9X 「null」欢迎转载,保留摘要,谢谢!


🙂🙂🙂关注微信公众号:【芋道源码】有福利:

  1. RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表
  2. RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址
  3. 您对于源码的疑问每条留言都将得到认真回复。甚至不知道如何读源码也可以请教噢。
  4. 新的源码解析文章实时收到通知。每周更新一篇左右。
  5. 认真的源码交流微信群。


用 Headless Chrome 跑爬虫或 AI Agent?一个页面吃掉几百 MB 内存,并发一上来机器直接 OOM。问题根源很简单——Chrome 是给人用的,渲染引擎、GPU 合成、字体光栅化……这些对无头场景全是负担。

Lightpanda 的思路:既然不用看,干嘛还渲染? 它从零用 Zig 写了一个无头浏览器,只保留 DOM 解析 + JS 执行 + 网络协议栈,把图形层整个砍掉。

开源地址:https://github.com/lightpanda-io/browser

快 11 倍、省 9 倍内存——怎么做到的?

官方 benchmark,100 个页面:执行速度是 Headless Chrome 的 11 倍,内存只用 1/9。原因不复杂——不渲染就不需要 GPU 进程、不需要合成线程、不需要为每个 tab 分配独立渲染进程。对 AI Agent 批量抓取和自动化测试来说,同样的机器能扛十倍的并发。

Zig 写的浏览器,不走 Chromium 老路

不基于 Chromium、Blink、WebKit 中的任何一个。完全用 Zig 从零实现,自带 HTML/CSS 解析和 JS 引擎绑定。好处是没有历史包袱,坏处是 Web 兼容性还在追赶中——但对结构化数据抓取场景已经够用了。

四种接入方式

1. CLI 直接抓

./lightpanda fetch https://example.com

拿到的是 JS 执行完毕后的 HTML,一行命令搞定。

2. CDP 服务模式

./lightpanda serve --host 127.0.0.1 --port 9222

启动 Chrome DevTools Protocol 服务,通过 WebSocket 连接,完整的自动化能力。

3. Puppeteer / Playwright 无缝接入

用 puppeteer-core 或 playwright-core 连到 CDP 端口即可,现有脚本几乎不用改。

4. 多语言 SDK

社区提供了 Ruby 封装库(含 Capybara 驱动),Node.js 原生支持。

开源地址:https://github.com/lightpanda-io/browser

文章目录
  1. 1. 快 11 倍、省 9 倍内存——怎么做到的?
  2. 2. Zig 写的浏览器,不走 Chromium 老路
  3. 3. 四种接入方式