0%

redis的数据备份比较简单,持久化策略有aof与rdb两种方式,rdb对存储数据有压缩,备份最好选择rdb文件进行备份。数据恢复在从rdb文件中提取。

  • RDB 将数据库的快照(snapshot)以二进制的方式保存到磁盘中。文件小,便于备份恢复
  • AOF 以协议文本的方式,将所有对数据库进行过写入的命令(及其参数)记录到AOF文件,以此达到记录数据库状态的目的。文件大用于主备数据同步
阅读全文 »

redis cluster集群提供了扩容功能,以解决在线动态扩容和数据迁移等问题。Redis 集群没有并使用传统的一致性哈希来分配数据,而是采用另外一种叫做哈希槽 (hash slot)的方式来分配的。redis cluster 默认分配了 16384 个slot,当我们set一个key 时,会用CRC16算法来取模得到所属的slot,然后将这个key 分到哈希槽区间的节点上,具体算法就是:CRC16(key) % 16384

注意的是:必须要3个以后的主节点,否则在创建集群时会失败,我们在后续会实践到。

阅读全文 »

说明下这里的算法指的是内存淘汰算法。redis作为应用级缓存使用,在内存超过限制时,按照配置的策略,淘汰掉相应的kv,使得内存可以继续留有足够的空间保存新的数据。

阅读全文 »

了解Redis的配置后就开始搭建集群。redis集群建议最少6个节点,在此之前先明确几个概念。

  • 节点/集群节点 对应集群的逻辑节点,是一个进程。通常说的节点就是集群节点。
  • 主备节点组/主备集群节点组 一组集群节点的集合,包括一个主节点及至少一个备节点。
  • 主机/主机节点 对应一台物理主机或虚拟主机,主机节点上可以有多个集群节点(不建议)。
阅读全文 »

最近公司需要基于第三方开源项目做分布式缓存,业界有Redis、Memcached、Ehcache等产品。对产品redis做了一些研究,于是决定整理一下该产品的特性及使用场景拿出来分享。

Redis有sentinel哨兵机制监控管理多节点,也有通过代理管理的codis,3.0之后官方推出Cluster的集群方案。它们各有优缺点,sentinel简洁方便,codis管理方便,cluster性能优越。

阅读全文 »

Travis-CI是国外新兴的开源持续集成构建项目,支持Github项目,使用了小清新的yml语法,通过yml语法来驱动执行。Github项目的支持非常简单,开通Travis后只需编写.travis.yml就能完成持续集成。

Coveralls是一个自动化测试覆盖率的服务,它能提供代码覆盖率并友好的展现。

让我们现在开始吧!

阅读全文 »

对于评论系统我个人比较偏爱Disqus,喜欢Disqus的简洁风格,博客启用至今一直使用它。多说是国内使用最多最便捷的第三方评论系统。为什么要用多说呢?当然是Disqus别强了,虽说翻墙对于程序员来说像吃饭一样简单,但对新手还是有一定的门槛。考虑再三还是决定换用多说,让评论飞扬起来吧。已有的Disqus的评论再见了,相信Disqus会在回来的。

以此来祭奠逝去的Disqus。