随笔分类 -  Redis

摘要:前提:现在有主从结构,主库没有配置持久化,从库配置AOF。场景1:哪一天主库突然宕了,怎么办?非常危险的动作:重新启动主库。要知道这样一来,最坏情况数据将全部丢失。因为主库没有配置持久化,所以主库的data目录只有从库连接主库请求resync的时候做快照留下来的dump.rdb文件。如果重启主库,主库会按照data目录下的dump.rdb来恢复数据。因此,如果从库是从最开始就配置好了的而且没有发生过再次请求resync,那么此时的dump.rdb将是空的。主库按照空的dump.rdb恢复数据,自然数据全无,从库发现主库能够连接上时会自动请求resync,从库也将拷贝一份空白的数据。这个时候怎么 阅读全文
posted @ 2012-02-21 16:18 雪刚 阅读(7701) 评论(2) 推荐(3) 编辑
摘要:研读infoQ上《Redis复制与可扩展集群搭建》(http://www.infoq.com/cn/articles/tq-redis-copy-build-scalable-cluster)后,思考后,写下这篇看后感。文章主要写了四点,1. 对现有的Redis主从复制缺陷的思考,以及提出的主动复制解决思路。2. 对动态扩容的思考3. Redis复制改进思路4. Redis与MySQL整合思路在下只对1,2,4这三点说下感受。针对第一点,目前我们知道Redis主从的实现,以及持久化的实现还不是非常完美。文章也说了持久化虽然有三种形式:快照,AOF以及VM,但是相对较好的只有 快照与AOF。主从 阅读全文
posted @ 2012-02-21 14:57 雪刚 阅读(1512) 评论(0) 推荐(0) 编辑
摘要:Redis处理的速度很快,因为它是基于内存的。在内存能够足够容纳数据的时候,所有的数据都存放在内存。这个时候不论是读取数据还是写入数据都是非常快的。但是如果数据量很大,大到内存已经无法全部容纳的时候,我想对存储有一定了解的人都在想,这个时候redis是怎么处理的呢?处理速度是否会直线下降? 幸亏,答案是否定的。Redis使用到了VM,在redis.conf设置vm-enabled yes 即开启VM功能。 通过VM功能可以实现冷热数据分离。使热数据仍在内存中,冷数据保存到磁盘。这样就可以避免因为内存不足而造成访问速度下降的问题。在这里,需要特别提到的是,Redis并没有使用OS提供的Sw... 阅读全文
posted @ 2011-11-16 10:58 雪刚 阅读(3789) 评论(0) 推荐(0) 编辑
摘要:看了一天的技术文章,趁还没下班前写下自己的总结首先明确概念:redis是可以持久化数据的。大致可以分为两种方式。第一种:snapshot 在redis.conf设置自动执行snapshot所需要满足的条件即可。默认的例子是:save 900 1,save 300 10,save 60 1000. 只要满足其中任何一个条件即可。 snapshot过程: 1:首先fork一个子进程。主进程继续接收连接请求,子进程开始偷偷的对内存数据做快照。互不影响。做快照是基于copy on write模式,即父子进程共享相同的物理页。当父进程需要对相应的物理页做修改时,会生成相应物理页的一个副本,针对... 阅读全文
posted @ 2011-11-15 18:17 雪刚 阅读(868) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示