Memcached 是一个开源、分布式的内存缓存系统。
Memcached on QingCloud 将 Memcached 制作成App, 能直接在AppCenter 进行一键部署。
在部署 App 之前,您需要创建一个 VPC 网络和关联一个 Vxnet 私有网络,详情见 (VPC 指南)
当Memcached服务创建完成之后,我们可以查看Memcached节点的运行状态。
当缓存服务创建完成之后,我们可以进行连接测试。 如图所示,我们可以同时连接到多节点进行查询和写入,Memcached 的客户端会根据 Hash 算法来自动计算数据的存放节点位置。
测试代码(需要预先安装python以及python-memcached):
import memcache
mc = memcache.Client(['192.168.0.13:11211','192.168.0.14:11211','192.168.0.15:11211'])
mc.set('kobe', 'laker')
mc.get_stats()[0][1].get('curr_items')
mc.get_stats()[1][1].get('curr_items')
在缓存服务运行过程中,会出现服务能力不足或者容量不够的情况,您都可以通过扩容来解决。
Memcached 缓存服务支持多个缓存节点。当容量或者性能不足时,您可以通过增加缓存节点来提升。
默认的 Memcached 客户端使用简单 Hash 来进行数据分片,当增加或删除节点时可能会造成大量的缓存失效。可以采用支持一致性 Hash 算法的 Memcached 客户端来避免这个问题,例如hash_ring
当缓存容量不足时,您可以通过扩容操作来提升缓存容量。
扩容后可以通过threads和max_memory这两个配置项对缓存服务进行调优。
我们提供了强大的监控和告警功能,帮助用户更好的管理和维护运行中的 Memcached 缓存集群。