squid主函数流程图
2016-02-17 10:08:50 0 举报
squid源码分析
作者其他创作
大纲/内容
mainLoop.registerEngine(&signalEngine)注册信号处理引擎
结束
是
SelectLoopInit
opt_send_signal是否有信号
mainLoop.run()主循环入口
parseCacheAccessConf解析自定义的配置
DiskIOModule::SetupAllModules()没有使用
Fs::Init()缓存存储策略模块初始化
mainLoop.setPrimaryEngine(&comm_engine)设置主引擎
Mem::Init()初始化内存池
sendSignal处理信号
ConfigureCurrentKid根据进程名确认运行模式
没看出怎么确定使用哪种轮询方法的
退出
StoreFileSystem::SetupAllFs()加载FsAdd设置的缓存存储文件系统
adapt
mainParseOptions解析启动参数
mainLoop.registerEngine(EventScheduler::GetInstance())停止单独信号处理机制
根据编译参数选择
registerTokens
false
configDoConfigure配置解析
checkRunningPidsquid是否已经启动
否
mainLoop.setTimeService(&time_engine)注册时间服务引擎
mainInitialize主要的初始化函数
StoreFileSystem::FsAdd
EventLoop::dispatchCalls()
ssl
do_while循环
checkEngine处理引擎中的事件
Ip::ProbeTransport()确定运行环境是否支持IPv6
mainLoop.registerEngine(&store_engine)注册存储处理引擎
EventLoop::runOnce()
Auth::Init()认证模块初始化
mainLoop.registerEngine(&comm_engine)注册通信处理引擎
GetInstance根据--enable-auth参数确定调用模块
Format::Token::Init()注册组件
是否失败10次
storeReplSetup()函数根据squid编译配置自动生成
parseConfigFile配置文件的合法检查和解析
SquidMain
true
storeFsInit()缓存替换策略模块初始化
storeReplAdd
SquidShutdown关闭相关服务
这个主要针对上面信号引擎处理机制的
StoreFSufs::StoreFSufs
icap
Store::Root()设置缓存存储的root
parseOneConfigFile合法性检查
0 条评论
回复 删除
下一页