代码改变世界

阅读排行榜

Modified 2 color sort

2010-12-05 01:33 by Sun Yongyue, 3244 阅读, 收藏,
摘要: 不知道原来的问题是怎么样子,修改后大概题意就是说有一个由0和1组成的数据要做到先在奇数位放置0,偶数位放置1,多出来的部分再放到最后边。有一个限制条件是原地地交换,也就是原则上不能使用额外空间(当然O(1)的变量还是可以用的)。比如说输入{0,1,1,0,1,1,0}就变换成{0,1,0,1,0,1,1}好的,没有现成算法,这种问题我喜欢。其实还是可以从其他算法中借鉴一些思想,还记得Knuth给的一个快排吗?eidx = 0; // even indexoidx = 1; // odd indexwhile (eidx len && oidx len){ while (eidx l 阅读全文

tt2mysql —— 一个异构数据库同步方案

2011-11-13 22:32 by Sun Yongyue, 2960 阅读, 收藏,
摘要: 大多数数据库都自带了同步方案,但通常是同步到同一类型的数据库。在一些特定的情况下,我们可能希望把数据从一种数据库,同步到另一种数据库,以便进行数据分析、统计、挖掘等,或是完成实时监控、实时搜索等服务。 本文介绍的就是这样一个方案,把数据从NoSQL数据库ttserver同步到MySQL上。 数据的同步过程基本上可以分解成:获取、解析、识别、处理。 获取同步(replicating)过程基本上就是处理高性能网络交互、各层通信协议、基于安全考虑的身份验证等问题的过程。解析(parsing)过程主要处理具体数据结构,由分派器(dispatcher)分派给具体的识别器(recognizer)进行识别. 阅读全文

Memcached遍历Key

2011-04-01 13:21 by Sun Yongyue, 2660 阅读, 收藏,
摘要: 前段时间XX升级之后出了点小问题,最后定位到是缓存数据格式变动造成的。当时就想要个工具去把memcached里的key拿出来看,之后虽然没有用上,但自己还是写了个,以备后用。 目前功能比较简单,只是遍历所有的key,稍加修改可以 1)取出指定格式(正则等)的key;2)显示value。交互可以更好一点:) 1 # -*- coding:utf-8 -*- 2 import telnetlib 3 import re 4 def send(tn, cmd): 5 tn.write(cmd + "\r\n") 6 return tn.read_until("END\r 阅读全文

nginx编译记

2010-12-01 10:06 by Sun Yongyue, 2084 阅读, 收藏,
摘要: /*** @author Sun Yongyue* @comment 有点久了,入门级的东东,今天翻到就放出来吧*/nginx编译记 -- with pcre/zlib/openssl preinstall不想让nginx和pcre、openssl、zlib等一起安装(事实上一起做静态编译的话,nginx的性能会好一点,不过这个地方只是个人环境,不用考虑)。开始尝试编译时,使用一些资料上的with-pcre、with-zlib、with-openssl参数。后来一直不成功,修改N次后无果,google之。查看很多资料之后,锁定以下几篇。[1] 发现objs/autoconf.err里边提示md 阅读全文

几句话说说跨IDC分布式数据库Calvin

2015-03-10 01:18 by Sun Yongyue, 2023 阅读, 收藏,
摘要: CalvinFS拿了FAST 15最佳论文;找到了失联十三年的小伙伴;年终/年初整理资料,发现做团委工作的 King 师兄对Calvin有兴趣;最近其他团队对分布式事务和存储问题/兴趣较多……几件事激发了我写这本文的动机,要知道上一篇是2012年的(虽然一直有做个人学习、工作笔记)。Yale的Cal... 阅读全文