Recent Posts

thrift compact protocol

我们代码里之前升级了fbthrift,客户端使用的channel类型从HeaderClientChannel换成了RocketClientChannel,默认是使用CompactProtocol,然后通过tcpdump抓包看了眼RPC层发送的数据,发现已经完全看不懂了,正好借此机会梳理一下。

fbthrift start-up and tear-down

最近看了下在退出服务时在一些极端case下出现core的问题,顺便也重新梳理下fbthrift的启动和停止流程。在我们的一个服务进程中,会启动多个ThriftServer,他们的IO线程池和工作线程池是共享的,除了RPC Server对外暴露接口之外,当接收到一个RPC请求时,可能会调用服务进程中的其他组件(比如...