llhttp高性能、高可维护的 HTTP 解析器

联合创作 · 2023-09-30 20:17

llhttp 是一个高性能、高可维护的 HTTP 解析器。它是一个 http_parser 到 llparse 的接口,llparse 是用于将增量解析器编译为 C 输出和 LLVM bitcode 的 API,它可以编译并与嵌入式程序(如 Node.js)链接。

Node.js 中的 http_parser 实际上可维护性极差,这正是 llhttp 的发力之处, 它希望达到以下几个目标:

  • 可维护

  • 可验证

  • 尽可能提高性能

目前 llhttp 的性能优于 http_parser:


input size bandwidth reqs/sec time
llhttp (C) 8192.00 mb 1497.88 mb/s 3020458.87 ops/sec 5.47 s
llhttp (bitcode) 8192.00 mb 1131.75 mb/s 2282171.24 ops/sec 7.24 s
http_parser 8192.00 mb 694.66 mb/s 1406180.33 req/sec 11.79 s

llhttp 快了大约 116%。

浏览 1
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报