Redis

Redis实现单设备登录的场景分析

用户登录 拦截器 注册拦截器 在有些场景下,我们希望用户一个账号只能登录一个设备。 这个时候我们可以用Redis来实现。 原理: 用户首次登录时,将用户信息存入Redis,key是用户id,value是token。当用户在其他设备登录时,会重新生成toke...

Redis Stat的安装指南

redis-stat是一个用ruby写成的监控redis的程序,基于info命令获取信息,而不是通过monitor获取信息 一、安装ruby yum install -y ruby ruby-devel rubygems apt-get install r...

Redis解决优惠券秒杀应用案例

【前端页面】 【分析代码】 一人一单 展望 虽然本文是针对黑马点评的优惠券秒杀业务的实现,但是是适用于各种抢购活动,保证线程安全。 摘要:本文先讲了抢购问题,指出其中会出现的多线程问题,提出解决方案采用悲观锁和乐观锁两种方式进行实现,然后发现在抢购过程中容...

Redis数据库的使用场景介绍(避免误用Redis)

Redis 是目前 NoSQL 领域的当红炸子鸡,它象一把瑞士军刀,小巧、锋利、实用,特别适合解决一些使用传统关系数据库难以解决的问题。但是 Redis 不是银弹,有很多适合它解决的问题,但是也有很多并不适合它解决的问题。另外,Redis 作为内存数据库,...

浅谈Redis安全策略

Redis 提供了诸多安全策略,比如为了保证数据安全,提供了设置密码的功能。Redis 密码设置主要有两种方式:一种是使用CINFIG命令来设置密码;另外一种则是手动修改 Redis 的配置文件。虽然看似前者更为简单,其实两种方式各有特点。本节将对它们进行...

redis中数据类型命令整理

redis是键值对的数据库,有5中主要数据类型: 字符串类型(string),散列类型(hash),列表类型(list),集合类型(set),有序集合类型(zset) 几个基本的命令: 函数 说明 keys * 获得当前数据库的所有键 
exi...

redis启动流程介绍

1. 准备运行环境 * 设置oom handler,zmalloc分配内存失败时调用 * 初始化随机种子,用于生成随机数 * 将server参数初始化为默认值  * 创建命令与处理函数的映射表 2. 解析命令行参数、loadServerConfi...

Redis主从复制问题和扩容问题的解决思路

一、解决主从复制问题 当使用Redis作为存储引擎的时候,并且使用Redis读写分离,从机作为读的情况,从机宕机或者和主机断开连接都需要重新连接主机,重新连接主机都会触发全量的主从复制,这时候主机会生成内存快照,主机依然可以对外提供服务,但是作为读的从机,...

在Mac OS上安装Vagrant和Docker的教程

当听到很多人在说Docker是多么多么的棒,很多新潮的孩子都在使用它时,我决定在我的开发环境上也来尝试下。在下面的这篇文章中,我将讲解在Mac OS X怎样建立Postgres,Elasticsearch和Redis。 什么是Docker Docker用轻...

Redis中Lua脚本的使用和设置超时

Redis提供了Lua脚本功能来让用户实现自己的原子命令,但也存在着风险,编写不当的脚本可能阻塞线程导致整个Redis服务不可用。 本文将介绍Redis中Lua脚本的基本用法,以及脚本超时导致的问题和处理方式。 EVAL命令简介 eval格式 Redis ...