zoukankan      html  css  js  c++  java
  • Memcache和Redis

    1、Memcache是多线程,Redis单线程
    2、Memcache预分配(区、块),Redis现场申请内存,并且可以配置虚拟内存
    3、Redis可以实现持久化,主从赋值,实现故障恢复
    4、Memchace只是简单的key value,但是Redis支持数据类型比较多

    数据结构简单 单线程无CPU切换性能损耗 没有多线程加锁问题

    为什么是单线程
    1、线程切换开销大
    2、锁
    3、非必要的内存拷贝
    4、Redis多样的数据结构,每种结构只做自己爱做的事


    Redis快的主要原因是:

    完全基于内存
    数据结构简单,对数据操作也简单
    使用多路 I/O 复用模型


    单进程单线程弊端
    无法发挥多核CPU性能,不过可以通过在单机开多个Redis实例来完善;

    Redis持久化
    1、快照(满足条件:m秒内超过n个key修改,自动快照)(dump.rdb)
    2、AOF(边存边写到硬盘)


    Redis用string存UserInfo会自动序列化(使用的是.NET自带的序列化)
    拿的时候自动反序列化

    Memcache要手动序列化

    Redis用Hash存UserInfo 不用序列化和反序列化

  • 相关阅读:
    帮忙看看怎么优化这个最长的sql
    12种不宜使用的Javascript语法
    走格子
    乘法逆元
    完美字符串
    全排列问题
    A. Sorting Railway Cars
    Prim
    矩阵取数
    套题T8&T9
  • 原文地址:https://www.cnblogs.com/vvull/p/10701282.html
Copyright © 2011-2022 走看看