- 福哥答案2020-01-25:[答案1:](https://bbs.csdn.net/topics/398982967)redis-sentinel故障转移的流程:1.当多个sentinel发现并确认了master有问题。2.接着会选举出一个sentinel作为领导。3.再选举出一个slave作为master。4.通知其余的slave,新的master是谁。5.通知客户端一个主从的变化。6.... 福哥答案2020-01-25:[答案1:](https://bbs.csdn.net/topics/398982967)redis-sentinel故障转移的流程:1.当多个sentinel发现并确认了master有问题。2.接着会选举出一个sentinel作为领导。3.再选举出一个slave作为master。4.通知其余的slave,新的master是谁。5.通知客户端一个主从的变化。6....
- 雪花算法中机器id保证全局唯一关于分布式id的生成系统, 美团技术团队之前已经有写过一篇相关的文章, 详见 Leaf——美团点评分布式ID生成系统通常在生产中会用Twitter开源的雪花算法来生成分布式主键 雪花算法中的核心就是机器id和数据中心id, 通常来说数据中心id可以在配置文件中配置, 通常一个服务集群可以共用一个配置文件, 而机器id如果也放在配置文件中维护的话, 每个应用就需要... 雪花算法中机器id保证全局唯一关于分布式id的生成系统, 美团技术团队之前已经有写过一篇相关的文章, 详见 Leaf——美团点评分布式ID生成系统通常在生产中会用Twitter开源的雪花算法来生成分布式主键 雪花算法中的核心就是机器id和数据中心id, 通常来说数据中心id可以在配置文件中配置, 通常一个服务集群可以共用一个配置文件, 而机器id如果也放在配置文件中维护的话, 每个应用就需要...
- IP地址或黑名单过滤算法选型问题产生背景: 日常过滤涉及IP地址、邮寄黑名单等过滤,需要拦截用户信息比较过滤。常用技术选型: 1、Map或set对象存储黑名单信息,过滤时候判断Key是否存在。实现简单,占用较多内存空间; 2、redis存储黑名单,支持分布式。黑名单比较大时候空间占用高; 3、布隆过滤器,效率高,存储空间小。但存在一定概率的误判;(单机... IP地址或黑名单过滤算法选型问题产生背景: 日常过滤涉及IP地址、邮寄黑名单等过滤,需要拦截用户信息比较过滤。常用技术选型: 1、Map或set对象存储黑名单信息,过滤时候判断Key是否存在。实现简单,占用较多内存空间; 2、redis存储黑名单,支持分布式。黑名单比较大时候空间占用高; 3、布隆过滤器,效率高,存储空间小。但存在一定概率的误判;(单机...
- Google布隆过滤器与Redis布隆过滤器对比1)、Google布隆过滤器的缺点基于JVM内存的一种布隆过滤器 重启即失效 本地内存无法用在分布式场景 不支持大数据量存储2)、Redis布隆过滤器可扩展性Bloom过滤器:一旦Bloom过滤器达到容量,就会在其上创建一个新的过滤器不存在重启即失效或者定时任务维护的成本:基于Google实现的布隆过滤器需要启动之后初始化布隆过滤器 缺点:需要... Google布隆过滤器与Redis布隆过滤器对比1)、Google布隆过滤器的缺点基于JVM内存的一种布隆过滤器 重启即失效 本地内存无法用在分布式场景 不支持大数据量存储2)、Redis布隆过滤器可扩展性Bloom过滤器:一旦Bloom过滤器达到容量,就会在其上创建一个新的过滤器不存在重启即失效或者定时任务维护的成本:基于Google实现的布隆过滤器需要启动之后初始化布隆过滤器 缺点:需要...
- 得码豆者得天下,德玛西亚。 得码豆者得天下,德玛西亚。
- 福哥答案2020-01-15:一、我想到的答案。为什么不能用设备id?接口调用,如果是网页,设备id是无法获取的。另外,设备id可以作假。为什么不能用ip区分?有些网络(某些校园网),对外就是一个ip。用token区分设备有什么缺点?同一台设备登录多次,会被当成多个不同的设备。实在想不到好的办法,故逻辑实现采用token区分设备。逻辑实现如下:方案1:用redis里的list,key存【用户... 福哥答案2020-01-15:一、我想到的答案。为什么不能用设备id?接口调用,如果是网页,设备id是无法获取的。另外,设备id可以作假。为什么不能用ip区分?有些网络(某些校园网),对外就是一个ip。用token区分设备有什么缺点?同一台设备登录多次,会被当成多个不同的设备。实在想不到好的办法,故逻辑实现采用token区分设备。逻辑实现如下:方案1:用redis里的list,key存【用户...
- 福哥答案2020-10-07:#福大大架构师每日一题#Redis6.0的多线程部分只是用来处理网络数据的读写和协议解析,执行命令仍然是单线程顺序执行。所以我们不需要去考虑控制 key、lua、事务,LPUSH/LPOP 等等的并发及线程安全问题。并发竞争问题看起来是线程不安全,但这是业务问题,不是redis本身的问题。***[评论](https://user.qzone.qq.com/318... 福哥答案2020-10-07:#福大大架构师每日一题#Redis6.0的多线程部分只是用来处理网络数据的读写和协议解析,执行命令仍然是单线程顺序执行。所以我们不需要去考虑控制 key、lua、事务,LPUSH/LPOP 等等的并发及线程安全问题。并发竞争问题看起来是线程不安全,但这是业务问题,不是redis本身的问题。***[评论](https://user.qzone.qq.com/318...
- 福哥答案2020-07-23:Redis 在完成初始化全局服务器配置,加载配置文件,初始化服务器,开始加载持久化的数据到内存中。如果启用了 appendonly 了,则Redis从 appendfile 加载数据,否则就是开启了rdb,从dbfile 加载数据。appendfile 中保存的是redis命令,dbfile中保存的是 key value 以及key的元数据(例如过期时间,所在数... 福哥答案2020-07-23:Redis 在完成初始化全局服务器配置,加载配置文件,初始化服务器,开始加载持久化的数据到内存中。如果启用了 appendonly 了,则Redis从 appendfile 加载数据,否则就是开启了rdb,从dbfile 加载数据。appendfile 中保存的是redis命令,dbfile中保存的是 key value 以及key的元数据(例如过期时间,所在数...
- 福哥答案2020-07-22:1.主从同步缓冲区设定大小,如果进行全量复制耗时太长,进行部分复制时发现数据已经存在丢失的情况,必须进行第二次全量复制,致使slave陷入死循环状态。在全量复制的时候,最好做好监控。2.有时候,redis存储过多,全量同步变得不可接受。这时考虑如果增量复制时,发生阻塞,根据业务场景,考虑是否redis进入只读状态,不对外更新,防止全量同步。3.master 内存... 福哥答案2020-07-22:1.主从同步缓冲区设定大小,如果进行全量复制耗时太长,进行部分复制时发现数据已经存在丢失的情况,必须进行第二次全量复制,致使slave陷入死循环状态。在全量复制的时候,最好做好监控。2.有时候,redis存储过多,全量同步变得不可接受。这时考虑如果增量复制时,发生阻塞,根据业务场景,考虑是否redis进入只读状态,不对外更新,防止全量同步。3.master 内存...
- 福哥答案2020-07-21:1.从服务发送一个sync同步命令给主服务要求全量同步。2.主服务接收到从服务的sync同步命令时,会fork一个子进程后台执行bgsave命令(非阻塞)快照保存,生成RDB文件,并将RDB文件发送给从服务。3.从服务再将接收到的RDB文件载入自己的redis内存。4.待从服务将RDB载入完成后,主服务再将缓冲区所有写命令发送给从服务。5.从服务在将主服务所有的... 福哥答案2020-07-21:1.从服务发送一个sync同步命令给主服务要求全量同步。2.主服务接收到从服务的sync同步命令时,会fork一个子进程后台执行bgsave命令(非阻塞)快照保存,生成RDB文件,并将RDB文件发送给从服务。3.从服务再将接收到的RDB文件载入自己的redis内存。4.待从服务将RDB载入完成后,主服务再将缓冲区所有写命令发送给从服务。5.从服务在将主服务所有的...
- 福哥答案2020-07-20:1.由于 Redis 是内存数据库,短时间内大量增加数据,可能导致内存不够用。2.redis是单线程的,单台服务器无法充分利用多核服务器的CPU。3.遇到大量查询时容易阻塞。4.缓存和数据库双写一致性问题。5.缓存雪崩问题。6.缓存击穿问题。7.缓存的并发竞争问题。8.内存碎片问题。9.Redis不具备自动容错和恢复功能,主机从机的宕机都会导致前端部分读写请求失... 福哥答案2020-07-20:1.由于 Redis 是内存数据库,短时间内大量增加数据,可能导致内存不够用。2.redis是单线程的,单台服务器无法充分利用多核服务器的CPU。3.遇到大量查询时容易阻塞。4.缓存和数据库双写一致性问题。5.缓存雪崩问题。6.缓存击穿问题。7.缓存的并发竞争问题。8.内存碎片问题。9.Redis不具备自动容错和恢复功能,主机从机的宕机都会导致前端部分读写请求失...
- 福哥答案2020-06-16:时间复杂度是O(N)。时间复杂度:O(N) where N is the size of the hash. 福哥答案2020-06-16:时间复杂度是O(N)。时间复杂度:O(N) where N is the size of the hash.
- 福哥答案2020-06-15:答案来自群成员:1.setnx:del2.set:lua+del3.redisson:@Overridepublic void unlock(String lockKey) { RLock lock = redissonClient.getLock(lockKey); lock.unlock();} 福哥答案2020-06-15:答案来自群成员:1.setnx:del2.set:lua+del3.redisson:@Overridepublic void unlock(String lockKey) { RLock lock = redissonClient.getLock(lockKey); lock.unlock();}
- 福哥答案2020-06-14:1.SETNX+EXPIRE。非原子性。2.SET key value [EX seconds] [PX milliseconds] [NX|XX]EX second :设置键的过期时间为second秒PX millisecond :设置键的过期时间为millisecond毫秒NX :只在键不存在时,才对键进行设置操作XX:只在键已经存在时,才对键进行设置操作S... 福哥答案2020-06-14:1.SETNX+EXPIRE。非原子性。2.SET key value [EX seconds] [PX milliseconds] [NX|XX]EX second :设置键的过期时间为second秒PX millisecond :设置键的过期时间为millisecond毫秒NX :只在键不存在时,才对键进行设置操作XX:只在键已经存在时,才对键进行设置操作S...
- 福哥答案2020-06-13:福哥口诀法:简链字跳整 压快压SDS simple synamic string:简单动态字符串。支持自动动态扩容的字节数组 。list :链表 。双端链表。dict :字典。使用双哈希表实现的, 支持平滑扩容的字典 。zskiplist :跳跃表。附加了后向指针的跳跃表 。intset : 整数集合。用于存储整数数值集合的自有结构 。ziplist :压缩列表... 福哥答案2020-06-13:福哥口诀法:简链字跳整 压快压SDS simple synamic string:简单动态字符串。支持自动动态扩容的字节数组 。list :链表 。双端链表。dict :字典。使用双哈希表实现的, 支持平滑扩容的字典 。zskiplist :跳跃表。附加了后向指针的跳跃表 。intset : 整数集合。用于存储整数数值集合的自有结构 。ziplist :压缩列表...
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢
2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考
2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本
2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签