1、Redis-Shake

RedisShake 是一个用于在两个 Redis 之间同步数据的工具,满足非常灵活的同步与迁移需求。
支持解析、恢复、备份与同步四个功能:
恢复(restore):将 RDB 文件恢复到目的 Redis 数据库;
备份(dump):将源 Redis 的全量数据通过 RDB 文件备份;
解析(decode):读取 RDB 文件,并以 JSON 格式解析存储;
同步(sync):支持源 Redis 和目的 Redis 的数据同步,支持全量和增量数据的迁移;
同步(rump):支持源 Redis 和目的 Redis 的数据同步,仅支持全量迁移;

2、Docker

Docker 是一个开源的应用容器引擎,可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低;
Docker 是一个用于开发,交付和运行应用程序的开放平台。Docker 使您能够将应用程序与基础架构分开,从而可以快速交付软件。借助 Docker,您可以与管理应用程序相同的方式来管理基础架构。通过利用 Docker 的方法来快速交付,测试和部署代码,您可以大大减少编写代码和在生产环境中运行代码之间的延迟

应用场景

  • Web 应用的自动化打包和发布;
  • 自动化测试和持续集成、发布;
  • 在服务型环境中部署和调整数据库或其他的后台应用;
  • 从头编译或者扩展现有的 OpenShift 或 Cloud Foundry 平台来搭建自己的 PaaS 环境;

3、canal

canal是阿里巴巴旗下的一款开源项目,纯Java开发。基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了MySQL(也支持mariaDB);
基于日志增量订阅&消费支持的业务:
1、数据库镜像
2、数据库实时备份
3、多级索引 (卖家和买家各自分库索引)
4、search build
5、业务cache刷新
6、价格变化等重要业务消息

4、redis

Redis是现在最受欢迎的NoSQL数据库之一,Redis是一个使用ANSI C编写的开源、包含多种数据结构、支持网络、基于内存、可选持久性的键值对存储数据库,其具备如下特性:

  • 基于内存运行,性能高效
  • 支持分布式,理论上可以无限扩展
  • key-value存储系统
  • 开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API;

    Redis的应用场景有哪些?

    Redis 的应用场景包括:缓存系统(“热点”数据:高频读、低频写)、计数器、消息队列系统、排行榜、社交网络和实时系统;