hertz初探 | 青训营笔记

79 阅读1分钟

Herze 初识

Herze特点

易用性

  • 文档库丰富,持续更新
  • 提供了Herze脚手架工具,根据接口定义(IDL)自动化生成项目骨架
    • 统一规范
    • 提升效率

扩展性

网络层扩展

  • 基于链接的网络库
    • cloudwego开源库netpoll
      • 不支持windows和tls
      • 适用场景为小包传输,通常在业务中是最优解
      • 大包传输流时反而net库会更优
    • golang原生网络库net
  • 基于流的网络库
    • quic-go网络库
    • 支持http3,传输层interface和go实现,达到扩展http3的目的
    • http3的使用没有那么广泛

协议层扩展

支持http/1.1、http/2、http/3、websocket,自定义协议

应用层扩展

  • 支持pprof、gzip、i18n、csrf、反向代理等常见中间件的扩展

高性能

benchmark

  • fiber
  • fasthttp
  • hertz
  • netpoll性能高,hertz的协议解析会好一些