高效内存存储服务 LeanCache 正式发布

LeanCache 是为云引擎用户提供的高性能、高可用的内存存储服务。与我们以往的数据存储服务相比,它不仅能够处理更多的并发连接和请求数,极大地提高应用性能,而且还能降低数据存储的使用成本。像秒杀、抢红包、数据量少但读写比例很高等场景都适合使用 LeanCache。

leancache_flowchart

在云引擎中访问一个容量为 2GB 的 LeanCache 实例,每秒可以处理将近 70,000 次的请求,而一般情况下访问存储服务的请求峰值为每秒 800 次,相差将近 90 倍。除了更高的性能,LeanCache 还可以帮助用户节省费用。因为交由 LeanCache 处理的请求不计入存储 API 调用次数,所以用户可以把一些高频率的查询从按 API 调用次数收费的存储服务分流至 LeanCache 上,通过降低总的 API 调用次数来减少费用。

LeanCache 基于 Redis 技术,同时支持缓存数据存储和持久化存储,可以在不中断服务的情况下在线扩容。同时,LeanCache 支持在多个应用之间共享数据,所以如果多个云引擎节点需要协同工作和通信,LeanCache 也是正确的选择。

创建节点

进入 控制台 >(选择应用)> 存储 > 云引擎 > LeanCache,点击 创建节点 来创建新的 LeanCache 节点。如下图所示:

dashboard_leancache

创建实例时可选参数:

  • 实例名称:最大长度不超过 32 个字符,限英文、数字、下划线,且不能以数字开头。每个开发者账户下 LeanCache 实例名称必须唯一,不填则为随机字符串。
  • 最大容量:当前可选的容量大小有:128 MB、256 MB、512 MB、1 GB、2 GB、4 GB、8 GB。
  • 删除策略:内存满时对 key 的删除策略默认为 volatile-lru(优先删除设定了过期时间的 key 中最近最少使用的 key)。关于删除策略的详细内容请参考 LeanCache 使用指南

使用

LeanCache 目前仅支持通过云引擎访问。实例创建完毕后,云引擎应用就可以从环境变量中获取 REDIS_URL_< 实例名称> 的 Redis 连接字符串,通过该信息连接并使用 LeanCache。

LeanCache 实例在开发者账户内全局可见,并不与某个应用固定绑定。所以在某个应用内创建的 LeanCache 实例,其他应用也一样可以使用。对于某些使用场景,譬如 O2O 行业的用户端和管理端,或者网络租约车平台的乘客端和司机端,需要多个应用共享同一份数据,这一点将会非常有用。

可靠性

LeanCache 实例使用 Redis Master-Slave 主从热备,有多个观察节点每隔 1 秒钟观察一次主节点的状态。如果「主节点」最后一次有效响应在 5 秒之前,则该观察节点认为主节点失效。如果超过总数一半的观察节点发现主节点失效,则自动将「从节点」切换为主节点,并会有新的从节点启动重新组成主从热备。这个过程对应用完全透明,不需要修改连接字符串或者重启,整个切换过程应用只有几秒钟的访问中断。

与此同时,从节点还会以 AOF 方式 将数据持久化存储到可靠的中央文件中,每秒刷新一次。如果很不巧主从节点同时失效,则马上会有新的 Redis 节点启动,并从 AOF 文件恢复,完成后即可再次提供服务,并且会有新的从节点与之构成主从热备。

价格

容量每日
128 MB1.0 元
256 MB1.5 元
512 MB3.0 元
1 GB5.0 元
2 GB10.0 元
4 GB20.0 元
8 GB50.0 元

LeanCache 服务现在已经上线,我们将从 2015 年 12 月 7 日 开始对它收费。结算方式为按天扣费,使用时间不足一天按一天收费。因为用户可能需要调整容量,所以为了方便计算,我们按照用户当天所使用的「最大容量」来结算,次日凌晨从账户余额中扣款。同时,为了防止 LeanCache 节点被随意创建而浪费不必要的服务器资源,我们要求开发者账户留有足够的余额。

若想了解更多技术细节,请阅读《LeanCache 使用指南》。

高效内存存储服务 LeanCache 正式发布》上有1条评论

  1. Pingback引用通告: 2015 年 12 月 LeanCloud 产品更新汇总 | LeanCloud Blog

发表评论

电子邮件地址不会被公开。 必填项已用*标注