PhxRPC
文章平均质量分 81
Nickqiao
这个作者很懒,什么都没留下…
展开
-
PhxRPC源码分析(一)BlockTcpStream
phxrpc简介 phxrpc是微信开源的轻量级rpc框架,支持协程模式,代码量不大,很适合拿来学习一个。 定制输入输出流 phxrpc使用标准输入输出的方式封装了socket,使用<<和>>来实现读写。 实现类图如下: streambuf streambuf是一个流缓冲区,包含输入和输出缓冲区。向ostream写入时,数据会放到输出缓冲区中,从istr...原创 2019-11-13 20:58:09 · 1310 阅读 · 0 评论 -
PhxRPC源码分析(二)uthread_context
uthread 协程的概念在coroutine源码分析中有介绍。phxrpc默认使用ucontext作实现,同时还有boost优化版本。 UThreadContext UThreadContext是定义了协程接口的基类,并且有一个静态函数对象,用来创建协程上下文,其应该是子类的DoCreate函数, UThreaStackMemory UThreaStackMemory是每个协程...原创 2018-03-03 19:14:34 · 1230 阅读 · 0 评论 -
PhxRPC源码分析(三) RPC
RPC 整个RPC的定义基本都在hsha_server这个文件。主要有一下几个类: DataFlow :数据流,所有请求和应答分别保存在两个线程安全的队列中。 HshaServerStat HshaServerQos: 统计运行状态,独立线程。 Worker :独立的工作线程,如果是协程模式,每个worker会有多个协程。 WorkerPool:工作池,管理Worker。 HshaServe...原创 2019-11-13 20:57:48 · 1009 阅读 · 0 评论