平凡的世界

低调,做人一定要低调,尤其是想做鸟人

推荐sersync来进行文件同步

抑制不住的冲动给大家介绍sersync,来进行文件同步,公司的产品部署平台就是采用SVN + sersync来实现的。可以参考这篇文章《利用SVN搭建测试服务器》,文件同步采用sersync即可。

sersync原理
使用 Linux 2.6 内核的 inotify 监控 Linux 文件系统事件,被监听目录下如果有文件发生修改,sersync 将通过内核自动捕获到事件,并将该文件利用 rsync 同步到多台远程服务器。sersync 仅仅同步发生增、删、改事件的单个文件或目录,不像rsync镜像同步那样需要比对双方服务器整个目录下数千万的文件,并且支持多线程同步,因此效率非常高。

sersync介绍
sersync主要用于服务器同步,web镜像等功能。基于boost1.41.0,inotify api,rsync command.开发。目前使用的比较多的同步解决方案是inotify-tools+rsync ,另外一个是google开源项目Openduckbill(依赖于inotify- tools),这两个都是基于脚本语言编写的。相比较上面两个项目,本项目优点是:

  1. sersync是使用c++编写,而且对linux系统文件系统产生的临时文件和重复的文件操作进行过滤(详细见附录,这个过滤脚本程序没有实现),所以在结合rsync同步的时候,节省了运行时耗和网络资源。因此更快。
  2. 相比较上面两个项目,sersync配置起来很简单,其中bin目录下已经有基本上静态编译的2进制文件,配合bin目录下的xml配置文件直接使用即可。
  3. 另外本项目相比较其他脚本开源项目,使用多线程进行同步,尤其在同步较大文件时,能够保证多个服务器实时保持同步状态。
  4. 本项目有出错处理机制,通过失败队列对出错的文件重新同步,如果仍旧失败,则每10个小时对同步失败的文件重新同步。
  5. 本项目自带crontab功能,只需在xml配置文件中开启,即可按您的要求,隔一段时间整体同步一次。无需再额外配置crontab功能。
  6. 本项目socket与http插件扩展,满足您二次开发的需要。

PS:金山的同学开源出来的,不得不推荐鼓励下。

Visual Studio的广告剧

一个热衷于code的developer,一个热衷于developer的girl,他们将发生怎样的故事?

深深的情愫,淡淡的烦恼,他们是幸福的。

Gearman分布式远程过程处理框架

对于绝大多数发展中等的web 2.0网站来说,LAMP结构已经不能满足现在的需要了,新的架构组合是GLAMMP,G=Gearman(分布式远程过程处理),M=Memcached(高性能的分布式的内存对象缓存系统)。

简单的说Gearman是PHP实现异步处理利器,当然不仅仅是PHP实现异步处理的手段。

Gearman简介
Gearman是 Brad Fitzpatrick 的一个作品,用 Perl 写的任务调度程序,提供一个服务器端和多种语言的客户端接口,包括 C/Perl/Python/Ruby 等,在 client library 本身就支持一定程度的高可靠度。

Gearman系统用来把工作委派给其他机器,分布式的调用更适合做某项工作的机器,并发的做某项工作,在多个调用间做负载均衡,或用来在调用其它语言的函数。

阅读全文»

数据库设计范式的理解

前言
为什么要写这篇文章呢,从去年年底开始,就和很多做技术的朋友交流过,从数据库设计到数据库架构各个方面的内容。有一些朋友执着于ORM,执着于所谓的数据库设计,却忘记了一切技术是要为业务服务这个基石。当然这文章里也有一些自己的理解,想向大家表达。

范式是什么
范式是符合某一种级别的关系模式的集合。关系数据库中的关系必须满足一定的要求,即满足不同的范式。目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、第四范式(4NF)、第五范式(5NF)和第六范式(6NF)。满足最低要求的范式是第一范式(1NF)。在第一范式的基础上进一步满足更多要求的称为第二范式(2NF),其余范式以次类推。一般说来,数据库只需满足第三范式(3NF)就行了。

阅读全文»

2010年迪拜旅游小记

去年来迪拜的时候,写了篇《迪拜生活小记》,这次来迪拜已经十来天了,小结一下。

飞机
上次来是阿联酋航空公司,这次是坐南航的飞机,价格上我机票买的比较早,比阿航的便宜了一半以上,点评下这两个航空公司,吃的差不多,唯一的区别就是南航的飞机没有阿航的好,南航靠椅上没有可玩的小电视。

刚上飞机,南航的空姐很温柔的说飞机好像是起落架坏了需要修,结果就修了三个小时,然后我们晚点了三个小时。

各种Mall
迪拜这地方就是Mall多,而且每个Mall也非常大,Mall of Emirates、Dubai Mall是经常去的,非常之大,去了好几次,刚发现有一层有一大片地方是各种数码店,Sony、Nokia、Samsung等等等等,保守估计一整天的时候是逛不完Dubai Mall的。

顺带说下,我最喜欢在Mall里做的事情,就是扎进数码店,按个体验。

Buji Khalifa Tower
Dubai Mall是否是世界最大的,我无从考证(PS:媳妇曰,有处考证,百度一下你就知道),但是Buji Khalifa Tower肯定是世界最高的了。它就在Dubai Mall的旁边,顺带说下Dubai Mall的音乐喷泉还不错,来迪拜的可以看一下。

我必须拍几张这个世界最高楼的相片,已经很多朋友嘱咐我了。

阅读全文»

近期文章