07 2013 档案
用PHP将Unicode 转化为UTF-8
摘要:function unescape($str) { $str = rawurldecode($str); preg_match_all("/(?:%u.{4})|&#x.{4};|&#\d+;|.+/U",$str,$r); $ar = $r[0]; //print_r($ar); foreach($ar as $k=>$v) { if(substr($v,0,2) == "%u"){ $ar[$k] = iconv("UCS-2BE","UTF-8",pack("H4", 阅读全文
posted @ 2013-07-25 17:05 fonyer 阅读(927) 评论(0) 推荐(0)
git-flow 备忘清单
摘要:原文地址:http://danielkummer.github.io/git-flow-cheatsheet/index.zh_CN.html 阅读全文
posted @ 2013-07-10 10:04 fonyer 阅读(404) 评论(0) 推荐(0)
memcached 一致性hash原理
摘要:memcache 是一个分布式的缓存系统,但是本身没有提供集群功能,在大型应用的情况下容易成为瓶颈。但是客户端这个时候可以自由扩展,分两阶段实现。第一阶段:key 要先根据一定的算法映射到一台memcache服务器。第二阶段从服务器中取出缓存的值。但是有一个问题,比如其中一台服务器挂了,或者需要增加一台服务 的时候,这个时候第一阶段的算法就很重要了,怎样使得原来的数据尽可能的继续有效,减少扩展节点或缩减节点带来的冲击。下面列出想到一些解决方法:一:hash一致性算法:优点:当一个节点失效的时候,其他节点的数据不会受到破坏,这个节点的数据会被分流到另外一个节点。当增加一个节点时,只会对一个节点的 阅读全文
posted @ 2013-07-10 10:01 fonyer 阅读(261) 评论(0) 推荐(0)
IoC/DIP其实是一种管理思想
摘要:关于IoC的的概念提出来已经很多年了,其被用于一种面象对像的设计。我在这里再简单的回顾一下这个概念。我先谈技术,再说管理。话说,我们有一个开关要控制一个灯的开和关这两个动作,最常见也是最没有技术含量的实现会是这个样子:然后,有一天,我们发现需要对灯泡扩展一下,于是我们做了个抽象类:但是,如果有一天,我们发现这个开关可能还要控制别的不单单是灯泡的东西,我们就发现这个开关耦合了灯泡这种类别,非常不利于我们的扩展,于是反转控制出现了。就像现实世界一样,造开关的工厂根本不关心要控制的东西是什么,它只做一个开关应该做好的事,就是把电接通,把电断开(不管是手动的,还是声控的, 还是光控,还是遥控的),而我 阅读全文
posted @ 2013-07-10 09:54 fonyer 阅读(262) 评论(0) 推荐(0)