Redis 内置的数据类型有 5种:字符串String、哈希Hash、列表List、集合Set、有序集合ZSet字符串类型 String 是 Redis 中最基本的类型,一个 key 对应着一个 value,String 类型是二进制安全的,即其值可以存储任何的类型,如图片或者序列化后的对象,其一个键最大可以存储 512MB 的数据。字符串类型的操作赋值操作Set key value [EX s
转载
2023-08-30 10:19:10
34阅读
Redis SET命令用于在Redis键中设置一些字符串值。返回值如果在键中设置了值,返回简单字符串回复:OK。如果值没有设置则返回 Null。语法下面是Redis SET命令的基本语法。redis 127.0.0.1:6379> SET KEY_NAME VALUEShell示例redis 127.0.0.1:6379> SET mykey "redis"
OKShell选项在SE
转载
2023-06-19 14:10:54
71阅读
redis一、字符串string1.设置单个键值2.设置多个键值3.设置追加值4.获取5.删除二、哈希hash1.设置单个属性2.设置多个属性3.获取属性4.获取单个属性的值5.获取多个属性的值6.获取所有属性的值7.删除整个hash键及属性三、列表list1.从左侧插入数据2.从右侧插入数据3.从指定元素前、后插入数据4.获取5.设置指定索引位置的元素值6.删除指定元素四、集合set1.添加键
转载
2023-08-18 07:10:30
29阅读
1、Redis设置键的生存时间或者过期时间生存时间:指当前键可以保持多长时间;过期时间:指当前键什么时候过期,具体的时间戳;设置过期时间一般用expire,或者pexpire,主要区别:expire单位是秒,而pexpire单位是毫秒。TTL、PTTL命令,返回当前键距离过期还有多长时间,TTL单位是秒,PTTL单位是毫秒。Redis有四个不同的命令可以用于设置键的生存时间或过期时间:EXPIRE
转载
2023-07-07 15:45:07
107阅读
在启动一个程序时,我们希望窗口显示的位置处于屏幕的正中心,可以如下设置:MainForm mainForm = new MainForm();
mainForm.StartPosition = FormStartPosition.CenterScreen;
mainForm.Show();如果在允许操作主窗口之前,必须先登录,则弹出登录窗口。此时主窗口出现在登录窗口后面,无法进行操作。MainFo
转载
2023-07-09 21:40:41
71阅读
3种数据安全的防护措施:1.设置密码:redis.conf的requirepass 密码;此处密码必须复杂且定期修改的,因为ieredis速度很快,所以在一台比较好的服务器下,一个外部的用户可以在imiaozhong进行150次的密码尝试,需要指定非常强大的密码来防止暴力破解。auth 密码2.绑定ipbind ip1 空格 ip2只有指定的ip才能访问3.修改默认端口号:6379是默认的,将端口
转载
2023-07-06 16:37:59
5阅读
# Redis Hash设置可用超时
在Redis中,Hash是一种存储键值对的数据结构,常用于存储对象的属性和值。有时候,我们希望对Hash中的某个键值对设置超时时间,使其在一定时间后自动失效。本文将介绍如何在Redis中设置Hash中某个字段的可用超时。
## 实现思路
为了实现Hash中某个字段的可用超时,我们可以借助Redis的两个特性:`EXPIRE`命令和`HSET`命令。具体步
原创
2024-07-06 04:26:45
25阅读
前言在项目中我们经常有需要使用分布式锁的场景,而Redis是实现分布式锁最常见的一种方式,这篇文章主要是使用Go+Redis实现互斥锁和红锁。下面的代码使用go-redis客户端和gofakeit]库。互斥锁Redis里有一个设置如果不存在的命令,我们可以通过这个命令来实现互斥锁功能,在Redis官方文档里面推荐的标准实现方式是SET resource_name my_random_value N
转载
2023-08-22 12:11:12
33阅读
基于StackExchange.Redis的分布式锁直入主题一些思考分布式锁使用的场景Redis里分布式锁的实现为什么异步和同步的方法要分开 直入主题以IDatabase扩展方法的形式实现分布式锁方法,将代码拷到任意静态类里即可使用。/// <summary>
/// 使用Redis分布式锁执行某些操作
/// </summary>
/// <param name=
转载
2023-09-28 18:01:21
55阅读
简介在并发场景下,为了保证数据的一致性,需要通过加锁来实现。单机场景下,多线程修改本地数据,直接通过加锁互斥访问即可实现。但在分布式场景下,如果是多个实例修改一个数据,例如电商中秒杀,可能同时会有多个实例要访问数据库修改商品数量,这时就需要用到分布式锁,让多个实例互斥访问数据库。本地锁使用go自带的互斥锁实现多线程数据修改。package main
import (
"fmt"
"sync"
转载
2023-08-30 09:43:49
72阅读
最近回头看了看开发的.Net Core 2.1项目的复盘总结,其中在多处用到Redis实现的分布式锁,虽然在OnResultExecuting方法中做了防止死锁的处理,但在某些场景下还是会发生死锁的问题,下面我只展示部分代码:问题:(1)这里setnx设置的值“1”,我想问,你最后del的这个值一定是你自己创建的吗?(2)图中标注的步骤1和步骤2不是原子操作,会有死锁的概率吗?大家可以思考一下先,
转载
2023-10-11 23:46:24
25阅读
Redis有三个最基本属性来保证分布式锁的有效实现:安全性: 互斥,在任何时候,只有一个客户端能持有锁。活跃性A:没有死锁,即使客户端在持有锁的时候崩溃,最后也会有其他客户端能获得锁,超时机制。活跃性B:故障容忍,只有大多数Redis节点时存活的,客户端仍可以获得锁和释放锁。使用StackExchange.Redis 实现起来简单得很static void Lock()
{
转载
2023-06-23 20:45:55
31阅读
互斥锁 缓存击穿后,多个线程会同时去查询数据库的这条数据,那么我们可以在第一个查询数据的请求上使用一个互斥锁来锁住它。 其他的线程走到这一步拿不到锁就等着,等第一个线程查询到了数据,然后做缓存。后面的线程进来发现已经有缓存了,就直接走缓存。static Lock reenLock = new ReentrantLock();
public String findPubConfigB
转载
2023-06-23 22:35:39
79阅读
设置Redis最大占用内存 Redis需要设置最大占用内存吗?如果Redis内存使用超出了设置的最大值会怎样? 设置Redis最大占用内存 Redis设置最大占用内存,打开redis配置文件,找到如下段落,设置maxmemory参数,maxmemory是bytes字节类型,注意转换。修改如下所示: #
In
转载
2023-08-03 09:22:52
296阅读
分析&回答Redis 的高可用主要依托于主从复制(replication)和 哨兵机制(sentinel)。主从复制(replication)Redis里面只支持一个主,不像Mysql、Nginx主从复制可以多主多从。实现原理:从节点设置了主节点后,通过replication.c#replicationCron方法与master节点建立socket连接,每隔1秒执行一次。连接成功后从节点会
转载
2023-05-25 12:45:43
150阅读
# 使用C语言操作Redis中的Channel
Redis是一种开源的内存数据结构存储服务器,广泛应用于缓存、消息队列等场景。在Redis中,信道(Channel)常常用于发布/订阅模式,这样不同的客户端可以实时接收消息。本文将通过C语言的示例,指导你如何在Redis中设置和使用Channel。
## Redis的发布/订阅模式
Redis的发布/订阅模式分为两个部分:发布者(Publish
Redis高可用方案“高可用性”(High Availability)通常来描述一个系统经过专门的设计,从而减少停工时间,而保持其服务的高度可用性。单机的Redis是无法保证高可用性的,当Redis服务器宕机后,即使在有持久化的机制下也无法保证不丢失数据。所以我们采用Redis多机和集群的方式来保证Redis的高可用性。1、主从复制Redis支持主从复制功能,可以通过执行slaveof(Redis
转载
2023-08-30 09:52:04
49阅读
使用Redis-SentinelRedis-Sentinel是Redis官方推荐的高可用性(HA)解决方案,当用Redis做Master-slave的高可用方案时,假如master宕机了,Redis本身(包括它的很多客户端)都没有实现自动进行主备切换,而Redis-sentinel本身也是一个独立运行的进程,它能监控多个master-slave集群,发现master宕机后能进行自动切换。它的主要功
转载
2023-05-25 14:42:37
129阅读
原作者:张东洪常见的使用方式Redis的几种常见的使用方式包括:Redis 单副本Redis多副本(主从)Redis Sentinel(哨兵)Redis ClusterRedis自研各种使用的优缺点Redis 单副本Redis 单副本,采用单个Redis节点部署架构,没有备用节点实时同步数据,不提供数据持久化和备份策略,适用于数据可靠性要求不高的纯缓存业务场景。优点架构简单,部署方便。高性价比:缓
转载
2023-05-25 15:24:21
150阅读
最近很多朋友向我咨询关于高可用的方案的优缺点以及如何选择合适的方案线上使用,刚好最近在给宜人贷,光大银行做企业内训的时候也详细讲过,这里我再整理发出来,供大家参考,如有不妥之处,欢迎批评指正,也欢迎推荐更好的技术方案。不废话了,来看看方案吧~知识总纲Redis常见的几种主要使用方式:Redis 单副本Redis 多副本(主从)Redis Sentinel(哨兵)Redis ClusterRedis
转载
2023-09-19 19:12:43
203阅读