Ⅰ、binlog与redo的一致性(原子) 由内部分布式事务保证 我们先来了解下,当一个commit敲下后,内部会发生什么? 步骤操作 step1 InnoDB做prepare redo log(fsync) step2 Sever层写binlog(fsync) step3 InnoDB层commi ...
分类:
数据库 时间:
2019-01-08 00:59:27
阅读次数:
233
一:binlog写入机制。 先write ,把日志写入文件系统的的page cache ,然后fsync 将数据持久化到磁盘的操作。 binlog是每个线程一个binlogCache,binlogCache中包含tmpfile和memery. 二:redo log 写入机制 首先日志写道redolo ...
分类:
数据库 时间:
2019-01-05 13:26:18
阅读次数:
302
1、准备环境 redis.conf服务端配置如下: 启动redis服务端 登录redis-cli插入数据,手动持久化 查看rdb文件 2、备份rdb文件,保证数据安全 3、执行命令,开启AOF持久化 4、确保数据库的key数量正确 5、确保插入新的key,AOF文件会记录 6、如果想要在重启后,依然 ...
分类:
数据库 时间:
2019-01-02 19:17:04
阅读次数:
188
如果RabbitMQ集群只有一个broker节点,那么该节点的失效将导致整个服务临时性的不可用,并且可能会导致message的丢失(尤其是在非持久化message存储于非持久化queue中的时候)。可以将所有message都设置为持久化,并且使用持久化的queue,但是这样仍然无法避免由于缓存导致的问题:因为message在发送之后和被写入磁盘并执行fsync之间存在一个虽然短暂但是会产生问题的时
分类:
其他好文 时间:
2018-12-28 15:29:12
阅读次数:
213
redis.conf中的appendfysnc是对redis性能有重要影响的参数之一。可取三种值:always、everysec和no。 设置为always时,会极大消弱Redis的性能,因为这种模式下每次write后都会调用fsync(Linux为调用fdatasync)。 如果设置为no,则wr ...
分类:
移动开发 时间:
2018-12-07 11:46:06
阅读次数:
346
什么是redis? Redis是一种基于内存的并且数据可以持久化的NoSql数据库,而且支持的数据类型很丰富:string, list, set, zset, hash。 持久化 1.RDB(快照):将Reids在内存中的数据库记录定时 dump到磁盘上的RDB持久化 2.AOF(append on ...
分类:
其他好文 时间:
2018-12-05 12:17:34
阅读次数:
168
下载安装包 安装Linux下的开发包组 将安装包解压至/usr/local/,并编译安装 准备配置集群 安装创建集群的工具 ...
分类:
其他好文 时间:
2018-12-04 20:05:43
阅读次数:
148
1.问题业务上新增一条订单记录,用户接收到BinLake拉取的MySQL从库数据消息后,马上根据消息内的订单号去查询同一个MySQL从库,发现有些时候无法查到该条数据,等待大约500ms~1000ms后再去查询数据库,可以查询到该条数据。注:BinLake为京东商城数据库技术部自研的一套订阅和消费MySQL数据库binlog的组件,本例所描述的问题是业务方希望根据订阅的binlog来获取实时订单等
分类:
其他好文 时间:
2018-11-29 17:54:40
阅读次数:
243
1.介绍 默认Redis持久化是没有开启的。 2.持久化类型 RDB point in time snapshot 基于时间点的快照技术。 优点:持久化速度快,需要的磁盘较少。 缺点:只能将数据定格在一个时间点,不能记录数据变化过程。 用处:作为备份来使用,主从复制基于RDB功能的。 AOF App ...
分类:
其他好文 时间:
2018-11-03 19:15:25
阅读次数:
137
1. redis作为内存数据库需要保存大量用户的数据,但是redis中的数据保存到内存中,由于断电/宕机,肯定会导致内存数据丢失,为了防止数据丢失,采用持久化的方式,实现内存数据的备份; 当redis内存中有数据时,通过自身的策略有2中方式,一种是RDB模式,一种是AOF(默认);根据自身模式的设定 ...
分类:
其他好文 时间:
2018-11-03 13:57:48
阅读次数:
182