rust网络框架Pingora源码阅读3
这应该是Pingora
源码阅读的最后一篇文章,之前介绍了Pingora
中两个比较重要的概念, Server
和Service
, 本篇文章着重于监听服务的钩子函数, 这也是我们主要写业务代码的地方。
这应该是Pingora
源码阅读的最后一篇文章,之前介绍了Pingora
中两个比较重要的概念, Server
和Service
, 本篇文章着重于监听服务的钩子函数, 这也是我们主要写业务代码的地方。
上次主要阅读了Pingora
的Server
部分的代码, 本文阅读Pingora
另一个比较重要的部分Service
, Pingora
内置两种服务background(后台)和Listening(监听), 本文着重后者。
要想深入Pingora
应该是需要阅读源代码的,所以分析一下源代码,虽然Pingora
没有提供丰富的示例,但是提供了一些不错的文档,比如它的internals.md
文档,提供了很多细节和示意图,本系列文章会引用很多其中的示意图,Pingora
的源码分析应该会分为2篇文章或更多。
Pingora
一直是我比较期待的项目,所以写个入门系列教程吧。之前研究过一些其他产品,比如nginx
, nginx-ingress
, apisix
, bfe
等, 前三者植入业务基本靠lua
或者说openresty
而bfe
的社区实在是一言难尽, 所以我认为Pingora
会成为Rust的明星项目,虽然没达到预期,但至少提供了一个框架,一个社区。