IOBuf

IOBuf类似于linux中的sk_buf,是一个网络编程中的常见概念,用一个物理上的非连续空间虚拟出逻辑上的连续空间,同时利用引用计数避免拷贝复制。

空间布局如右所示:headRoom + data + tailRoom,因此可以prepend() && append()

同时通过多个IOBuf chain连接成逻辑上的连续空间,通过unlink释放。

同时兼容了iovec调用,充分利用多个小块读写。

EventBase

基于IOBufRequestCtx,引入了和libevent类似的事件循环模型。

经验

为了P99,一定要把CPU密集事件移动到专门的CPU密集操作池中,防止拖慢IO事件。


七月流火
1 声望1 粉丝