beanstalk源码剖析——Server和主循环

 

以后的分析都是基于beanstalk版本1.6版本的源码。

1. 服务实例Server

beanstalk中将一个监听实例抽象成为一个Server, 服务实例是监听指定地址(ip:port)的运行实例。结构如下:

server

2.epoll抽象

beanstalk对epoll相关的函数命名很奇怪,封装为如下

epoll处理

epoll在srvserver中初始化,并将监听socket加入epoll

srvserve

2. beanstalk主循环

beanstalk主循环用作处理epoll事件、时钟事件。对于epoll事件,每次只处理一个事件。

主循环
原文地址:https://www.cnblogs.com/blockcipher/p/2914494.html