上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 26 下一页
摘要: TCBDB是tokyo cabinet的一部分,实现了基于B+树的key/value存储,本文简单介绍TCBDB中分支及叶子节点的存储结构。 分支节点(非叶子节点)的结构 typedef struct { // type of structure for a page index uint64_t pid; // ID number of the referring page ... 阅读全文
posted @ 2013-04-19 14:12 ydzhang 阅读(427) 评论(0) 推荐(0)
摘要: 写了一个测试磁盘寻道(+旋转)时间的程序,方法如下:创建一个大文件(如果太小,文件所有内容都在一个磁道上),使O_DIRECT打开文件,随机选择一个位置(4k的倍数),读取4K(文件系统块)大小的数据。测试程序分别执行1、10、100、1000、10000次随机读文件操作,结果发现在1000次以内,消耗的时间总是1-3ms,超过10000才会略有大的增长,但也在1s范围内。发现DIRECTIO根本没有生效,百思不得其解。仔细阅读了man手册上关于O_DIRECT的说明:Try to minimize cache effects of the I/O to and from this file. 阅读全文
posted @ 2013-04-19 14:12 ydzhang 阅读(571) 评论(0) 推荐(0)
摘要: 1. linux提供opendir、readdir(readdir_r)、closedir和scandir等接口实现对目录的读取;2. readdir返回指向下一个目录项的指针,如果要自己传入缓冲区存储目录项,应使用readdir_r代替。readdir的结果中包含当前目录和上一级目录的目录项信息。3. 在遍历过程中,进程的工作目录不会改变,在递归遍历的时候,需要改变工作目录(chdir)以识别相对路径,或者每次都限定全局路径。4. 深度优先遍历目录树采用递归实现易编码(参见如下代码),广度优先遍历则需借助队列实现。当目录下的文件数量较少时,采用广度优先遍历效率会更高,因目录下的目录项基本都是 阅读全文
posted @ 2013-04-19 14:11 ydzhang 阅读(1082) 评论(0) 推荐(0)
摘要: 当Web服务器、文件服务器、游戏服务器等的用户数不断增加时,单服务器模型肯定不能完全满足服务的需求,集群服务模式已经逐渐普及,使用服务器集群做后台,一个主要的问题就是要解决负载均衡问题。 负载均衡算法主要分为两种,持续性和非持续性的负载均衡,持续性是指特定客户端发出的请求将由同一服务器服务。持续性算法主要基于随机理论,即其默认客户的访问时随机的,从而服务器的选择也是随机的,以此来实现负载均衡。... 阅读全文
posted @ 2013-04-19 14:11 ydzhang 阅读(540) 评论(0) 推荐(0)
摘要: 今天经历了迄今为止最长的一次面试,历时两个半小时,百度工程师GG不厌其烦的问着各种问题,很有耐心,并不断的给予指引。系统设计、算法设计、智力题等各种题目扑面而来,整个面试下来,受益匪浅,发现了很多不足,也学到了很多知识。 昨晚接到百度的面试通知,今天上午十点半到珞珈山国际大酒店面试,不到十点就赶到面试地点了,等到十点半左右,面试官出来说上一个面试的还没完,让我再等一会,对面试官GG的第一印象很好... 阅读全文
posted @ 2013-04-19 14:11 ydzhang 阅读(541) 评论(0) 推荐(0)
摘要: 位图主要用于快速检索关键字状态,通常要求关键字是一个连续的序列(或者关键字是一个连续序列中的大部分), 最基本的情况,使用1bit标示一个关键字的状态(可标示两种状态),但根据需要也可以使用2bit(标示4种状态),3bit(标示8种状态),当一个状态标示需要的位数达到32bit时,就演变成来一个整型数组了。 位图的主要应用场合:标示连续(或接近连续,即大部分会出现)的关键字序列的状态(状态数/... 阅读全文
posted @ 2013-04-19 14:11 ydzhang 阅读(834) 评论(0) 推荐(0)
摘要: 中国大的视频服务网站主要有优酷、土豆、酷六、还有几大门户(腾讯、新浪、搜狐等),他们都是以提供视频发布及观看、视频搜索(目录分类及导航)为主,网站上提供视频的主要是由专门的娱乐、体育类的网络编辑整理并发布到网站上的,视频大都来自于各大电视台、还有电影公司、当然还会有一些热心的拍客会上传他们的作品(有的拍客是把视频网站当做一个广告平台来宣传自己的)。 有些视频网站也会做一些特别的策划,在所有的视... 阅读全文
posted @ 2013-04-19 14:11 ydzhang 阅读(329) 评论(0) 推荐(0)
摘要: TC(Tokyo Cabinet )是日本人平林幹雄开发的一款 Key-Value 键值数据库。Tokyo Cabinet实现的数据库类型分为:TCHDB 哈希数据库、TCBDB B+Tree数据库、TCFDB 定长数据库、TCTDB 表格数据库、TCMDB 内存哈希数据库、TCNDB 内存B+Tree数据库。 下载了TC-0.2.9的源代码(比较老的一版,只实现了TCHDB),简要的了解... 阅读全文
posted @ 2013-04-19 14:11 ydzhang 阅读(295) 评论(0) 推荐(0)
摘要: Bitcask和Tokyo Cabinet的TCHDB都是基于hash的key-value存储系统,本文从两者的实现机制上进行简单的对比。 Bitcask: http://blog.chinaunix.net/space.php?uid=20196318&do=blog&id=154750 Tokyo Cabinet: http://blog.chinaunix.net/space.php?ui... 阅读全文
posted @ 2013-04-19 14:11 ydzhang 阅读(541) 评论(0) 推荐(0)
摘要: 今天下午参加CVT二面,24个应聘者被8个面试官群P,历时三小时十七分钟。 某天在群邮件里发现了CVT招暑期实习生的消息,大致看了下邮件,也没有发现很有吸引力的地方,直到看到了一些关于CVT的一些比较BT的一些消息(网上有个文档),我才开始关注CVT,发现CVT的招聘流程还真的是别具一格,首先要进行一个职业测评和一个专业测评,通过了测评才能下载CVT的简历,然后参加一面、再笔试、再二面、外加一个... 阅读全文
posted @ 2013-04-19 14:11 ydzhang 阅读(249) 评论(0) 推荐(0)
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 26 下一页