# redis

# redis介绍

redis是非常常用的一个分布式缓存,说它是分布式,一方面是指redis缓存一般部署在和应用服务器(调用缓存的一方)不同的机器上,另一方面是指redis缓存具备横向扩容的解决方案,可以提升整体缓存集群的存储容量和整体QPS。

redis的性能也是比较出色的,一般来说一个redis实例能够支持几十万的缓存QPS(当然具体的数值会和请求的时间复杂度、机器性能等情况有关)。 另外非常重要的一点是redis内置了很多常用的数据结构,能够解决非常多的业务需求场景。

# redis和memcached的比较、选择

另一个比较常用的缓存是memcached,它的特点是多线程单实例能够支持的QPS更高。 不过在数据结构丰富程度易用性、类库易用性、维护成本(持久化、同步、扩容、切换等)、社区活跃度等等方面, redis都是优于memcached的,所以除非你确实遇到比较大的QPS(比如几十万上百万QPS热点请求等无法扩容解决的情况)、或者对成本要求比较高(用较少的机器承担同样的QPS),大部分情况下都推荐用redis