IOBuf

IOBuf相似于linux中的sk_buf,是一个网络编程中的常见概念,用一个物理上的非间断空间虚构出逻辑上的间断空间,同时利用援用计数防止拷贝复制。

空间布局如右所示:headRoom + data + tailRoom,因而能够prepend() && append()

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

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

EventBase

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

教训

为了P99,肯定要把CPU密集事件挪动到专门的CPU密集操作池中,避免拖慢IO事件。