网站首页 » Redis

PHP php 安装phpredis扩展

下载phpredis扩展下载地址: https://github.com/phpredis/phpredis/releases安装进入解压后的文件夹, 依次执行:phpize ./configure make && make install 修改php.ini 添加phpredis.so将 extension=redis.so [...]

网站首页 » Redis

Mac 安装在redis 上的可视化工具

another-redis-desktop-manager支持切换中文mac 安装brew cask install another-redis-desktop-manager下载完成后,提示如下:直接在程序乌打开就可以了。 MacOS 10.15 系统下,如提示“无法启动”,请在系统偏好设置-安全性与隐私-选择【仍要打开】,即可使用。或者输入命令[...]

网站首页 » Redis

Redis 高并发下处理抢购,抢红包,秒杀

方案1,使用redis 加锁机制实现原理:后台创建红包后,将红包个数存入redis,采用常量键名拼接红包id 作为key,红包个数为value存入redis,然后当用户领取红包的时候,前端肯定传红包id到后端,后端 先加redis锁,然后根据接收的红包id 读取key对应的值就是红包剩余个数,然后减1后再存入。方案2,不使用redis 加锁机制实现[...]

网站首页 » Redis

Redis watch命令——监控事务

在 Redis 中使用 watch 命令可以决定事务是执行还是回滚。一般而言,可以在 multi 命令之前使用 watch 命令监控某些键值对,然后使用 multi 命令开启事务,执行各类对数据结构进行操作的命令,这个时候这些命令就会进入队列。当 Redis 使用 exec 命令执行事务的时候,它首先会去比对被 watch 命令所监控的键值对,如果[...]

网站首页 » Redis

Redis 实现加锁

Redis 加锁主要是利用了redis setnx 特性,redis 进行 setnx 的时候,如果key 已经存在则返回false; 如果成功,则将key 存入redis . 以此来判定是否被上着锁。<?php /** * Class Lock_Service 单据锁服务 */ class Lock_Service { /**[...]

网站首页 » Redis

Redis key 过期处理的几种方式

淘汰过期的keys 有两种方式:被动淘汰, 过期的key当有用户访问的时候,会被淘汰主动淘汰,redis 每10秒会做的事情,1.测试随机的20个keys进行相关过期检测; 2.删除所有已经过期的keys; 3.如果有多于25%的keys过期,则重复步骤1

网站首页 » Redis

Redis 的5 大value 类型

stringredis 字符串是二进制安全的,这意味着一个redis字符串能包含任意类型的数据重要应用:bitmap, 对字节的操作应用场景:1. 统计某用户任意时间段内登陆次数。 假设统计一年内,某用户的登录次数, 设置一个bitmap 365位,分别表示365天, 当登录一天,则为没有登录则为0. 2.统计任意时间窗口内活跃用户数量。一个字符串[...]