类似 nginx 的反向代理 pingap

1次阅读

共计 820 个字符,预计需要花费 3 分钟才能阅读完成。

Pingap 是类似于 nginx 的反向代理,基于 pingora 构建,简单而高效,支持文件与 WEB 界面的两种配置形式,大部分配置支持无需重启的执更新,10 分钟即可完成 https 站点服务配置。

类似 nginx 的反向代理 pingap

  • 服务支持配置多个 Location,通过 host 与 path 筛选对应的 location,按权重逐一匹配选择
  • 支持正则形式配置重写 Path,方便应用按前缀区分转发
  • HTTP 1/2 的全链路支持,包括 h2c 的支持
  • 支持静态配置、DNS 以及 docker label 的三种服务发现形式
  • 基于 TOML 格式的配置,配置方式非常简洁,可保存至文件或 etcd
  • 支持 10 多个 Prometheus 指标,可以使用 pull 与 push 的形式收集相关指标
  • Opentelemetry 支持 w3c context trace 与 jaeger trace 的形式
  • 频繁更新的 Upstream 与 Location 相关配置调整准实时生效(30 秒),其它应用配置更新后,无中断式的优雅重启程序
  • 访问日志的模板化配置,已支 30 多个相关属性的配置,可按需指定输出各种参数与指标
  • WEB 形式的管理后台界面,无需学习,简单易用
  • 开箱即用的 let’s encrypttls 证书,仅需配置对应域名即可
  • 不同域名的 tls 证书可使用在同一服务端口中,按 servername 自动选择匹配证书
  • 支持各种事件的推送:lets_encrypt, backend_status, diff_config, restart 等等
  • 丰富的 http 插件,如高效的缓存服务组件、多种压缩算法的压缩组件、不同种类的认证组件、不同形式的限流组件等等
  • 提供了不同阶段的统计数据,如 upstream_connect_time, upstream_processing_time, compression_time, cache_lookup_time 与 cache_lock_time 等

源代码基于 Apache-2.0 开源,可查阅源码库:https://github.com/vicanso/pingap

正文完
 0