可编程网关 Pipy 第二弹:编程实现 Metrics 及源码解读
由于要给团队做一下关于 Flomesh 的分享,准备下材料。 “分享是最好的学习方法。” 上一回初探可编程网关 Pipy,领略了 Pipy 的“风骚”。从 Pipy 的 GUI 交互深入了解了 Pipy 的配置加载流程。 今天看一下 Pipy 如何实现 Metrics 的功能,顺便看下数据如何在多个 Pipeline 中进行流转。 前置 首先,需要对 Pipy 有一定的了解,如果不了解看一下上一篇文章。 其次构建好 Pipy 环境,关于构建还是去看上一篇文章。 Metrics 功能实现 至于 Pipy 实现 Metrics 的方式,源码中就有,位于 test/006-metrics/pipy.js。 代理监听 6080 端口,后端服务在 8080 端口,Metrics 在 9090 端口 共有 5 个 Pipeline:3 个 listen 类型,2 个 Pipeline 类型 7 种过滤器:fork、connect、decodeHttpRequest、onMessageStart、decodeHttpResponse、encodeHttpRespnse、replaceMessage 贴一下源码: