LightCloud的设计原理
LightCloud是最近看到的一个比较轻巧的分布式key-value数据库,尽管这类软件已经让人觉得审美疲劳,但我仍然觉得它的设计思路值得一提。
特色
除开其项目主页上列出来的特点不提,我觉得还能数得上的特色有:
LightCloud是最近看到的一个比较轻巧的分布式key-value数据库,尽管这类软件已经让人觉得审美疲劳,但我仍然觉得它的设计思路值得一提。
特色
除开其项目主页上列出来的特点不提,我觉得还能数得上的特色有:
facebook在GitHub上托管了大量的开源项目,足足有26个。其中hiphop-php以及xhp在这阵子炒的比较热,的确是让人印象深刻的东西。顺手把别的项目翻出来看,也有很实用的工具,比如git-review。
git-review为git新增了一个很方便的代码review途径,利用这个命令,可以调用别的工具比如vimdiff来review代码的改动。下面简单记录一下使用的过程:
下载并安装
首先确认已经装好了git,剩下的事情比较简单。
一般情况下git svn clone这个操作会从第一个版本开始同步,如果版本号已经到了好几万(或更高?),这个操作会相当的费时。
当时还想着能不能hack一下git-svn脚本,其实后来看看文档,clone操作可以使用参数-r$REVNUMBER:HEAD检出指定版本后的代码,因此,更好的步骤应该是这样:
在温习flickr的ppt时,看到里面提到了一个叫subcon的工具。由于这个工具已经在google code上开源,所以我毫不客气的下载回来细细端详:
这工具用python写的
开始试用最近比较红的git,我看中的是它的本地版本库功能,即便网络比较烂的时候,也可以在本地提交,等到了合适的时候一并传上去。由于以前的代码版本控制使用的是svn,所以我用git-svn过渡一下。
目前在windows下,最好的git客户端恐怕就是装一个cygwin。鼓捣了一个时辰,整理好一些可用的配置文件,陈列一下以备下次使用:
~/.bash_profile
偶尔还会使用svn验证一下check in的情况,刚转过来不放心啊,下面的配置是为了防止svn命令行乱码。命令行git-svn在/usr/sbin/git-core/路径下,是一个perl脚本,为了方便,我把这个路径加入了PATH环境变量。
最近开始使用trac进行项目管理,和svn同步。使用过程中解决了两个并不常见的问题,贴出来和大家分享。
如何修改trac的assign to下拉列表
让trac的ticket和bugzilla有同样的状态
memcached 1.3将开始支持Binary Protocol,下面是一篇介绍的ppt。
大概看了一遍,可以认为memcache的binary协议相对原来基于文本的协议,略快一些。key的长度可以到65536(2 bytes)。而memcache 1.3将仍然保持向后兼容,同时支持文本协议和binary协议。
世界上最远的距离,是网通到电信 —— 这简直是赤果果的真理!
俺这个狗窝host在南方某个电信机房里,从北京访问页面,速度也还凑合着能过。但是要想通过ftp上传几个文件,几乎是不可能,只有三种情况会发生:
timeout!
在邮件组里看到这个补丁,能够将memcache中所有的key dump出来。
I have just finished a patch to dump all keys from memcached.
And I am glad to share this patch to anyone who wants to use it.
In the attachment, there are two python scripts which are used for dump all keys from a memcached server,