LeanCache 是为云引擎用户提供的高性能、高可用的内存存储服务。与我们以往的数据存储服务相比,它不仅能够处理更多的并发连接和请求数,极大地提高应用性能,而且还能降低数据存储的使用成本。像秒杀、抢红包、数据量少但读写比例很高等场景都适合使用 LeanCache 。
![](
https://blog.leancloud.cn/wp-content/uploads/2015/11/leancache_arch.png)
在云引擎中访问一个容量为 2GB 的 LeanCache 实例,每秒可以处理将近 70,000 次的请求,而一般情况下访问存储服务的请求峰值为 320 次/秒,相差 200 多倍。除了更高的性能, LeanCache 还可以帮助用户节省费用。因为交由 LeanCache 处理的请求不计入存储 API 调用次数,所以用户可以把一些高频率的查询从按 API 调用次数收费的存储服务分流至 LeanCache 上,通过降低总的 API 调用次数来减少费用。
LeanCache 基于 Redis 技术,同时支持缓存数据存储和持久化存储,可以在不中断服务的情况下在线扩容。同时, LeanCache 支持在多个应用之间共享数据,所以如果多个云引擎节点需要协同工作和通信, LeanCache 也是正确的选择。
### 创建节点
进入 **控制台** >(选择应用)> **存储** > **云引擎** > **LeanCache**,点击 **创建节点** 来创建新的 LeanCache 节点。如下图所示:
![](
https://blog.leancloud.cn/wp-content/uploads/2015/11/leancache_enter-625x356.png)
创建实例时可选参数:
* **实例名称**:最大长度不超过 32 个字符,限英文、数字、下划线,且不能以数字开头。每个开发者账户下 LeanCache 实例名称**必须唯一**,不填则为随机字符串。
* **最大容量**:当前可选的容量大小有: 128 MB 、 256 MB 、 512 MB 、 1 GB 、 2 GB 、 4 GB 、 8 GB 。
* **删除策略**:内存满时对 key 的删除策略默认为**volatile-lru**(优先删除设定了过期时间的 key 中最近最少使用的 key )。关于删除策略的详细内容请参考 [LeanCache 使用指南](
https://leancloud.cn/docs/leancache_guide.html#删除策略)。### 使用
LeanCache 目前仅支持通过云引擎访问。实例创建完毕后,云引擎应用就可以从环境变量中获取 `REDIS_URL_<实例名称>` 的 Redis 连接字符串,通过该信息连接并使用 LeanCache 。
LeanCache 实例在开发者账户内全局可见,并不与某个应用固定绑定。所以在某个应用内创建的 LeanCache 实例,其他应用也一样可以使用。对于某些使用场景,譬如 O2O 行业的用户端和管理端,或者网络租约车平台的乘客端和司机端,需要多个应用共享同一份数据,这一点将会非常有用。
### 可靠性
LeanCache 实例使用 Redis Master-Slave 主从热备,有多个观察节点每隔 1 秒钟观察一次主节点的状态。如果「主节点」最后一次有效响应在 5 秒之前,则该观察节点认为主节点失效。如果超过总数一半的观察节点发现主节点失效,则自动将「从节点」切换为主节点,并会有新的从节点启动重新组成主从热备。这个过程对应用完全透明,不需要修改连接字符串或者重启,整个切换过程应用只有几秒钟的访问中断。
与此同时,从节点还会以 [AOF 方式](
http://redisbook.readthedocs.org/en/latest/internal/aof.html) 将数据持久化存储到可靠的中央文件中,每秒刷新一次。如果很不巧主从节点同时失效,则马上会有新的 Redis 节点启动,并从 AOF 文件恢复,完成后即可再次提供服务,并且会有新的从节点与之构成主从热备。
### 价格
![](
https://forum.leancloud.cn/uploads/default/original/2X/8/8604b71f8e86583026edca845e45cf478eecc60a.png)
LeanCache 服务现在已经上线,我们将从 **2015 年 12 月 7 日** 开始对它收费。结算方式为按天扣费,使用时间不足一天按一天收费。因为用户可能需要调整容量,所以为了方便计算,我们按照用户当天所使用的「最大容量」来结算,次日凌晨从账户余额中扣款。同时,为了防止 LeanCache 节点被随意创建而浪费不必要的服务器资源,我们要求开发者账户留有足够的余额。
若想了解更多技术细节,请阅读 [ 《 LeanCache 使用指南》](
https://leancloud.cn/docs/leancache_guide.html)。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/240365
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.