redis
文章平均质量分 53
hzzyu
熟悉php,go,python爬虫,热爱编程,尊重程序
展开
-
redis连接池运转流程
redis连接池运转流程本文主要介绍redis-pool的PoolSize与MinIdleConns的参数配置对pool中连接数conns以及空闲连接数idleConns的影响PoolSize默认为 10 * runtime.NumCPU()连接池对象: p := &ConnPool{ conns: make([]*Conn, 0, opt.PoolSize), idleConns: make([]*Conn, 0, opt.PoolSize), }在一开始NewPoo原创 2021-04-16 16:41:37 · 998 阅读 · 0 评论 -
Redis命令时间复杂度查询表
String类型命令 时间复杂度 set 0(1) get 0(1) del 0(k),k是键的个数 mset 0(k),k是键的个数 mget 0(k),k是键的个数 incr 0(1) decr 0(1) incryby 0(1) decryby 0(1) incrybyfloat 0(1) append 0(1) strlen 0(1) setrange 0(n)原创 2020-09-01 21:51:33 · 1308 阅读 · 0 评论 -
Cache Aside Pattern
什么是“Cache Aside Pattern”?答:旁路缓存方案的经验实践,这个实践又分读实践,写实践。对于读请求 先读cache,再读db 如果,cache hit,则直接返回数据 如果,cache miss,则访问db,并将数据set回缓存 如上图:(1)先从cache中尝试get数据,结果miss了(2)再从db中读取数据,从库,读写...原创 2020-05-07 11:30:26 · 226 阅读 · 0 评论 -
Redis分布式锁的正确思路及踩坑详解
本文介绍Redis分布式锁的实现正确思路以及中间会遇到的坑一.v1版本setNX命令可以用于加锁判断,对于同一个key,如果已存在,则未false,不存在则返回true,表示加锁成功。那么假设在并发场景下,同一时间假设30个请求打进来,会有29个return返回,只有1个会执行业务代码,这里依靠的是redis的单线程模型,不论你的并发,在redis的单线程模型里永远都会排队依次执行...原创 2020-02-02 21:23:01 · 474 阅读 · 0 评论 -
Redis分布式锁的正确实现方式
前言分布式锁一般有三种实现方式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeeper的分布式锁。本篇博客将介绍第二种方式,基于Redis实现分布式锁。虽然网上已经有各种介绍Redis分布式锁实现的博客,然而他们的实现却有着各种各样的问题,为了避免误人子弟,本篇文章将详细介绍如何正确地实现Redis分布式锁。本博客使用第三方开源组件Jedis实现Redis客户端,...原创 2020-01-22 11:49:23 · 138 阅读 · 0 评论 -
面试还搞不懂redis,快看看这40道面试题(含答案和思维导图)
Redis 面试题1、什么是 Redis?.2、Redis 的数据类型?3、使用 Redis 有哪些好处?4、Redis 相比 Memcached 有哪些优势?5、Memcache 与 Redis 的区别都有哪些?6、Redis 是单进程单线程的?7、一个字符串类型的值能存储最大容量是多少?8、Redis 的持久化机制是什么?各自的优缺点?9、Redis 常见性能...原创 2019-12-10 11:02:33 · 156 阅读 · 0 评论 -
响应速度不给力?解锁正确缓存姿势
1. 常见概念在合理应用缓存前,需要了解缓存领域里相关的几个常用术语:1)缓存命中:表示数据能够从缓存中获取,不需要回源;2)Cache miss:表示没有命中缓存,如果缓存内存中还有内存空间的话,会将数据加入到缓存中;3)存储成本:当没有命中缓存时,回源获取后会将数据放置到存储中,整个将数据放置到存储空间所需要的时间以及空间称之为存储成本;4)缓...原创 2019-12-09 09:55:40 · 308 阅读 · 0 评论 -
php对于redis的上亿用户登录统计
可以用于上限超大的连续性的数字编号统计,在不牺牲查询速度的前提下,缩小存储空间。如用户id的统计,统计当天内访问网站的用。节约了32倍的空间。上亿用户登录统计存储模型设计因为有上亿的用户量,所以可以将每个用户按照每个位来存入,每一天都有一个bitmap,每个bitmap的每一位对应着一个用户的当天的登录状态值数据id设计每天的bitmap的key设置成当天日期,比如lo...原创 2019-09-30 14:50:46 · 342 阅读 · 0 评论 -
做程序开发的你如果经常用Redis,这些问题肯定会遇到
分布式缓存Redis是一种支持Key-Value等多种数据结构的存储系统。可用于缓存、事件发布或订阅、高速队列等多种场景。Redis使用ANSI C语言编写,提供字符串(String)、哈希(Hash)、列表(List)、集合结构(Set、Sorted Set)、流(Stream)等数据类型的直接存取。数据读写基于内存,同时可持久化到磁盘。在我们做开发的过程中经常会用到Redis,小编在这里就...原创 2019-09-17 11:07:26 · 114 阅读 · 0 评论