tokyo tyrant源码分析
文章平均质量分 78
pingnning
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
tokyo tyrant源码分析-总体设计
------------------------ 总体设计---------------------------------------结构:---------------多线程。三类线程: 主线程(1个): 监听socket,将接收到的请求sockfd分发给工作线程,以及信号处理。 worker线程(thnum个,参数指定,默认为8): 从原创 2009-10-15 18:49:00 · 1933 阅读 · 4 评论 -
tokyo tyrant源码分析-主从复制实现
"tyrant分析-总体设计"中已经提到,slave起一个线程(do_slave)做主从复制,它和master建立tcp连接,发送请求命令和起始时间rts +1(上次的更新时间加1秒)给master,然后循环的从master那里接收一条条的记录,更新自己db、ulog和rts file。do_slave是以1秒为频率执行的。(实际是等待一次do_slave执行完毕后,再等待1秒,然后进原创 2009-10-24 22:14:00 · 2311 阅读 · 7 评论 -
tokyo tyrant源码分析-日志系统实现
enum { /* enumeration for logging levels */ TTLOGDEBUG, /* debug */ TTLOGINFO, /* information */ TT原创 2009-10-24 22:18:00 · 998 阅读 · 0 评论 -
tokyo tyrant源码分析
目录> -总体设计 -主从复制实现 -日志系统实现 -编程小技巧 分析的tyrant版本为:1.1.18各节的标题已经清晰表明了其内容。各节的重点是尽可能简单的描述设计和实现,不会对函数或技术点做任何注释。基础知识还是通过书本系统的学习较好。另外描述的风格是剪裁过的源代码+文字解释,没有图片(画图比较浪费时间),而且我觉得图片除了给点直观的第一印象,原创 2009-10-27 09:35:00 · 999 阅读 · 0 评论 -
tokyo tyrant源码分析-编程小技巧
----------------1、内存分配---------------- char stack[TTIOBUFSIZ]; //65536char *buf = (rsiz ...free((buf == stack) ? NULL : buf); rsiz是运行时才能确定的值。这种方法的思想是尽可能使用静态分配,因为动态分配有损效率。因为rsiz的未原创 2009-10-27 10:18:00 · 1101 阅读 · 0 评论
分享