摘要:
1.使用redis中的自增来实现 2.使用setnx + del # 如果不存在set(返回1),如果存在则失败(返回0) 为了避免死锁会加上一个过期时间 自增方式 boolean isSelf = false; try { Long clock = cacheOperation.incrByOne 阅读全文
摘要:
string,list,hash,set,zset 底层实现数据结构 数据结构 String sds struct sdshdr{ //等于 SDS 保存字符串的长度 int len; //记录 buf 数组中未使用字节的数量 int free; //字节数组,用于保存字符串 char buf[]; 阅读全文
摘要:
1.纯内存操作 2.单线程操作,避免了频繁的上下文切换 3.采用了非阻塞I/O多路复用机制 (cpu不是Redis的瓶颈,Redis的瓶颈最有可能是机器内存或者网络带宽。) 阅读全文
摘要:
1.memcache所有值均是简单地字符串,redis有复杂的数据类型。 2.memcache不支持数据持久化,redis支持数据持久化。 3.redis速度比memcache快,redis构建了自己的vm机制,因为一般的系统调用系统函数,会浪费一定的时间去移动和请求。 阅读全文