代码地址:
通用排序服务器:http://code.google.com/p/fulin/source/browse/C++/cntsvr/sdp/?r=13
更新:
1. protocol 层增加缓冲区,以减少 pipeline 的次数。频繁的 pipeline 会因为锁争用的缘故导致性能严重下降。
2. 增加了一层 udp 转发的 so ,在进程之间也可以配置形成新的 pipeline
3. 增加了增量排序的实现:在 mcdb (memcachedb) 里保存快照,排序的 value 为总值减去快照值
4. 增量的时间单位是天,其他的增量,如周,月等,为日增量的合并排序的结果。当前使用 bash 脚本实现,脚本中使用 od ,awk ,sort 等工具。当前的实现由逻辑错误,各相同 id 的日增量没有合并 。(已合并)
5. mcdb 安装,配置,rotate 脚本等此处暂时省略。
PS: Linux 2.6.9 内核的 syslog 真的很烂。
PS2:mcdb 在主库崩溃的时候,重启辅库,似乎会导致辅库也僵死。计划今天晚些时候重现一次。
Post a Comment