memcached源码阅读学习

1,检查libevent的版本号sanitycheck

2,捕获SIGINT,绑定处理函数

3,设置strct settings初始化

4,set stderr non-buffering。setbuf(stderr, NULL)

5,处理getopt参数(熟悉optarg)

6,getrlimit设置获取或设定资源使用限制,设置为RLIM_INFINITY,如果设置失败,在按照setting数据。如果再失败,退出。

7,getuid == 0换到其它用户,切换用户失败退出。

8,跟进参数执行是否使用守护进程。

9,如果服务器支持内存锁定,并且用户显示使用内存锁定,执行mlockall()

10,初始化主线程main_base = event_init();

11,stat状态初始化,stats_init();

12,关于hash表的锁的个数item_lock_count = hashsize(power); hashsize是个宏获取到((ub4)1<<(n))

。。。待续

posted @ 2013-02-05 15:19  Wamei  阅读(242)  评论(0编辑  收藏  举报