Henkk

导航

Redis和Memcache对比及选择

1.为什么使用redis?

   主要是从两个角度去考虑:性能和并发

   性能 我们在碰到需要执行耗时特别久,且结果不频繁变动的SQL,就特别适合将运行结果放入缓存。这样,后面的请求就去缓存中读取,使得请求能够迅速响应。

 并发 在大并发的情况下,所有的请求直接访问数据库,数据库会出现连接异常。这个时候,就需要使用redis做一个缓冲操作,让请求先访问到redis,而不是直接访问数据库。

  为什么使用memcached原因进本上同redis主要方式就是空间换时间

2. Redis和Memcache的区别:

  1.  Redis只使用单核,而Memcached可以使用多核
  2. 数据持久化和主从复制,redis有这两个特性,Memcached没有
  3. 存储方式: memecache 把数据全部存在内存之中,断电后会挂掉,数据不能超过内存大小
        redis有部份存在硬盘上,这样能保证数据的持久性,支持数据的持久化
  4. .数据支持类型:redis在数据支持上要比memecache多的多。
  5. 使用底层模型不同:新版本的redis直接自己构建了VM 机制 ,因为一般的系统调用系统函数的话,会浪费一定的时间去移动和请求。
  6. 运行环境不同:redis目前官方只支持LINUX 上去行,从而省去了对于其它系统的支持,这样的话可以更好的把精力用于本系统 环境上的优化,虽然后来微软有一个小组为其写了补丁。但是没有放到主干上

个人总结一下,有持久化需求或者对数据结构和处理有高级要求的应用,选择redis,其他简单的key/value存储,选择memcache。

Nginx是一款轻量级Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。

参考:https://zhuanlan.zhihu.com/p/59168140

posted on 2020-10-21 09:59  Henkk  阅读(253)  评论(0编辑  收藏  举报