Tuesday, June 19, 2012

[Python] with语句

with statement in Python

http://effbot.org/zone/python-with-statement.htm
with open("foo.txt") as f:
    for line in f:
        print line
        # do sth else
使用with来打开文件的好处是, 不用在调用f.close()

Friday, June 15, 2012

Libevent笔记

参考
Libevent源码分析
libevent源码深度剖析
libevent的man

一个最简单的例子
/* 初始化libevent系统. */
event_init();

/* 准备ev_foo这个事件, 这个事件监听my_fd这个file descriptor, 当my_fd上出现EV_READ这个事件时候, 触发on_foo这个函数 */
event_set(&ev_foo, my_fd, EV_READ|EV_PERSIST, on_foo, NULL);
/* schedule这个事件 */
event_add(&ev_foo, NULL);

/* 进入event循环. */
event_dispatch();

Wednesday, June 06, 2012

YCSB notes

参数


requestdistribution: 可以为uniform(默认),zipf,latest等. 这几种(特别是zipf和latest的区别参见这里. 大体上说,latest和zipf的区别是zipf的popular key可能是任意的呃;而latest的popular key是最近insert的.

使用例子


生成load phase的trace,用来初始化被测试的数据库
${YCSB_HOME}/bin/ycsb load basic -P ${YCSB_HOME}/workloads/workloada -P ./my-workloads-setting.dat
生成exec phase的trace,正真用于测试的trace
${YCSB_HOME}/bin/ycsb run basic -P ${YCSB_HOME}/workloads/workloada -P ./my-workloads-setting.dat

参考


YCSB Core Properties