摘要:Workflow是Sogou研发的一款性能优异的C++网络服务框架,纯异步+并行的特性使它拥有极高的性能,核心优势: 1.多线程服务下的阻塞操作; 2.网络线程和执行线程之间的调度策略; 3.底层I/O方式的高效封装epoll; 我们可以workflow提供的底层协议与API,轻松实现自定义十万级并
阅读全文
摘要:1.基本数据结构 分别是 eventpoll、epitem 和 eppoll_entry。 1.1 eventpoll 我们先看一下 eventpoll 这个数据结构,这个数据结构是我们在调用 epoll_create 之后内核侧创建的一个句柄,表示了一个 epoll 实例。后续如果我们再调用 ep
阅读全文
摘要:libevent 流程图 Libevent作为C编写的、轻量级的开源高性能事件通知库,专注与网络IO,相较于C++的庞大的ACE库,源码精简,可跨平台,且同时支持IO多路复用技术;作为服务器底层常用的网络库,笔者和室友交流之后记录了如下总结。 1 libevent的设计思路 设计思路做到统一 统一事
阅读全文
摘要:我们知道一个程序的执行,需要可执行文件的生成和加载,从操作系统的角度来看可执行文件的装载,重点依赖虚拟存储方式,特别是虚拟地址空间的开辟以及硬件地址转换和映射机制。 首先,代码原始文本经过预编译,编译,汇编,链接装载(指包含符号解析与重定向过程的静态链接)之后,生成一类可执行文件,或称为ELF文件;
阅读全文