导航

内容在:http://chuansong.me/n/478502951177

PPT在:http://pan.baidu.com/s/1nvnOEBf

工具 跟 服务 的差别

从工具到服务之间缺失了哪些?工具可以各种方式使用;最常见的就是会出现工具滥用,比如这篇的提到的“Redis被开发人员滥用”、“冷热区分支持”,这些其实都可以靠管理规范解决。说白了,不管是有系统支持,还是人工审核,总之都需要有一个申请Redis资源、审核(设计评审)、登记、分配资源的过程。监控肯定要跟上,要有完整的、可视化的、与业务关联的系统支持。后续这些管理跟上后,就叫服务了。

 

使用代理方式封装

好处就是现有业务的切换非常容易。无感切换。

image

首先它是 Redis 的协议,接下来刚才我们在客户端里面支持的各种场景配置录在 proxy 里面,实现访问通道控制。然后再把 Redis 本身沉在我们 proxy 之后,让它仅仅变成一个储存的节点,proxy 再做一些自己的事情,比如本地缓存及路由。冷热区分方面,在一些压力不大的情况下,调用方看到的还是个 Redis ,但是其实可能数据是存在 RocksDB 里面了。

 

image

有很多之前是 memcache 的应用,后来是转到 Redis 去的,但是转出一个问题来了,有不少业务由于本身事情较多没有转换成 Redis,这些钉子户怎么办?同时维护这两个平台是非常麻烦的,刚才 proxy 就派到用场了。因为 memcache 本身它的数据支持类型是比较少的,因此转换比较简单,如果是一个更复杂的类型,那可能就转不过来了。所以我们 proxy 就把这些钉子户给拆掉了,他觉得自己还是在用 memcache,其实已经被转成了 Redis。

 

基于docker的可扩容

 

image