-
基于redis来实现的分布式锁
前言 提到数据一致性、操作原子性,诸如此类的一些与并发有关的词汇时不知道你第一时间会联想到什么呢?我相信大多数人可能会想到“锁”,为什么是锁呢,这个我不多说,大家心里应该都明白。在单体应用时代,我们使用jvm提供的锁就可以很好的工作,但是到了分布式应用时代,jvm提供的锁就行不通了,那么势必要借助一...
02月20日[游戏|数码]浏览:263
-
Redis如何保证接口的幂等性?我前后看了10遍,果断收藏
作者:冰峰编者说:比较实用的redis加锁的方式,代码段可以收藏。 在最近的一次业务升级中,遇到这样一个问题,我们设计了新的账户体系,需要在用户将应用升级之后将原来账户的数据手动的同步过来,就是需要用户自己去触发同步按钮进行同步,因为有些数据是用户存在自己本地的。那么在这个过程中就存在一个问题,要是...
02月20日[游戏|数码]浏览:430
-
Redis实现分布式锁与Zookeeper实现分布式锁区别
前言: 在学习过程中,简单的整理了一些redis跟zookeeper实现分布式锁的区别,有需要改正跟补充的地方,希望各位大佬及时指出 Redis实现分布式锁思路 基于Redis实现分布式锁(setnx)setnx也可以存入key,如果存入key成功返回1,如果存入的key已经存在了,返回0. Z...
02月20日[游戏|数码]浏览:372
-
Redis内存又不够用了?教你几种集群方案轻松甩掉存储难题
redis,一款技术研发者们耳熟能详的内存数据库。作为数据库,存储数据的容量都是有限的,不能超过主机内存的大小。通常而言,一台主机服务器的内存只有十几G,较大可达100G或200G。 为了解决Redis存储瓶颈问题,各大企业纷纷开始寻找解决方案,将数据分片(sharding 存储在多个Redis...
02月20日[游戏|数码]浏览:456
-
解析redis备份文件rdb的两种方法及对比
方法一:Python rdbtools 安装 rdbtools $ /usr/local/python/bin/easy_install pip $ /usr/local/python/bin/pip install rdbtools 解析成json格式 $ rdb --command json /...
02月20日[游戏|数码]浏览:299
-
Redis桌面管理工具Redis Desktop Manager 2024.2发布
简介 redis桌面管理器(又名RDM) - 是适用于windows,linux和macOS的快速开源Redis数据库管理应用程序。 该工具为您提供了一个易于使用的GUI,可以访问您的Redis数据库并执行一些基本操作:将键视为树,CRUD键,通过shell执行命令。 RDM支持SSL / TLS加...
02月19日[游戏|数码]浏览:375
-
Redis:解决分布式高并发修改同一个Key的问题
本文是通过watch(监控)+mutil(事务)实现应用于在分布式高并发处理等相关场景。下边先通过redis-cli.exe来测试多个线程修改时,遇到问题及解决问题。 高并发下修改同一个key遇到的问题: 1)定义一个hash类型的key,key为:lock_test,元素locker的值初始化为0...
02月19日[游戏|数码]浏览:461
-
单线程的Redis为什么轻松达到数万并发,记住这两点
单机轻松10万QPS的redis竟然是单线程的?!很多人都认为高并发就意味着多核心多进程,但这两者之间并没有特别大的联系。除了Redis之外,像Node.JS也是如此,那么为什么Redis能够如此之快呢? 首先,我们得了解下常见的网络模型,当客户端连接到服务器的时候,服务器有下面几个步骤...
02月07日[游戏|数码]浏览:497
-
Redis中 Hash的原理你知道吗?
基本介绍 Hash 也可以用来存储用户信息,和 String 不同的是 Hash 可以对用户信息的每个字段单独存储,String 则需要序列化用户的所有字段后存储.并且 String 需要以整个字符串的形式获取用户,而 hash可以只获取部分数据,从而节约网络流量.不过 hash 内存占用要大于 S...
01月26日[游戏|数码]浏览:444
-
Redis的高级特性一览
应用场景 缓存系统:用于缓解数据库的高并发压力 计数器:使用redis原子操作,用于社交网络的转发数,评论数,粉丝数,关注数等 排行榜:使用zset数据结构,进行排行榜计算 实时系统:使用Redis位图的功能实现布隆过滤器,进而实现垃圾邮件处理系统 消息队列:使用list数据结构,消息发...
01月23日[游戏|数码]浏览:427