今天遇到一个怪问题,虽然解决了,但是具体的原因还是不清楚。一个test.php文件,写了一个curl请求别的api接口,如果通过nginx访问的话,10次能成功一,二次,并且非常慢。如果通过php命令直接运行,每次都成功,并且速度很快。
找遍了redis cluster官方文档,没发现有关集群重启和关闭的方法。为啥会没有呢,猜测redis cluster至少要三个节点才能运行,三台同时挂掉的可能性比较小,只要不同时挂掉,挂掉的机器修复后在加入集群,集群都能良好的运作,万一同时挂掉,数据又没有备份的话,就有大麻烦了。
redis cluster集群中的节点基本上都对等的,没有管理节点。如果要让所有节点都关闭,只能关闭进程了# pkill -9 redis
有人问我,redis的多数据库,是不是启动多个redis进程,监听不同的端口。从某种层面上来说,这样可以算是,但是不推荐。
如果对git命令行不熟悉的话,用git图形界面工具,就比较合适了。建议使用tortoisegit这样的工具,命令行从学习到灵活掌握的时间成本比较高的。
想要达到的目的是,git服务端代码,迁移或者说是copy一份,原来的commit记录都保留下来,二个git服务端之间,相互不受影响。
现在说这个,感觉有点过时了,但是感觉用namespace的人还是不多,估计还是因为不习惯吧。
class把一个一个function组织起来,namespace可以理解成把一个一个class,function等有序的组织起来。个人觉得,namespace的主要优势有
第一,可以更好的管理代码
第二,文件一多,可以避免class,function的重名
第三,代码可读性增强了
阅读全文>>
php有redis的扩展,目前来说,还不支持redis cluster,推荐一下predis,功能比较全,从单个,到主从,到cluster都是支持的。效率怎么样,要靠自己去测试一下。
Redis 集群是一个提供在多个Redis间节点间共享数据的程序集.redis3.0以前,只支持主从同步的,如果主的挂了,写入就成问题了。3.0出来后就可以很好帮我们解决这个问题。
目前redis 3.0还不稳定,如果要用在生产环境中,要慎重。