Redis

CentOS系统安装Redis及Redis的PHP扩展详解

redis简介 redis是一款很不错的高性能的key-value数据库,它的出现在很大程度上弥补了很多像memcached这类的keyvalue存储的不足,它的特点有:支持持久化、半持久化数据保存、支持主从同步、value值支持多种类型等等。下面来一起看...

Redis中Scan命令的基本使用教程

前言 Redis中有一个经典的问题,在巨大的数据量的情况下,做类似于查找符合某种规则的Key的信息,这里就有两种方式, 一是keys命令,简单粗暴,由于Redis单线程这一特性,keys命令是以阻塞的方式执行的,keys是以遍历的方式实现的复杂度是 O(n...

深入了解Redis的性能

简介 多少次你发现自己在几个月的开发和无数的努力后陷入了毫无性能而言的web应用?多少次你在好奇如果你无法向普通用户传达快与最快的标准,你的客户还应该把你当作专家?多少你听到有关Google和Facebook一些糟糕的对比?让我告诉你,我的客户是怎么看待这...

redis中使用java脚本实现分布式锁

redis被大量用在分布式的环境中,自然而然分布式环境下的锁如何解决,立马成为一个问题。例如我们当前的手游项目,服务器端是按业务模块划分服务器的,有应用服,战斗服等,但是这两个vm都有可能同时改变玩家的属性,这如果在同一个vm下面,就很容易加锁,但如果在分...

Redis限流的几种实现

一、简单的限流 基本原理 二、漏斗限流 基本原理 Redis-Cell 参考来源 一、简单的限流 基本原理 当系统处理能力有限,如何组织计划外的请求对系统施压。首先我们先看下一些简单的限流策略,防止暴力攻击。比如要对IP访问,没5s只能访问10次,超过进行...

浅谈Redis在分布式系统中的协调性运用

在分布式系统中,各个进程(本文使用进程来描述分布式系统中的运行主体,它们可以在同一个物理节点上也可以在不同的物理节点上)相互之间通常是需要协调进行运作的,有时是不同进程所处理的数据有依赖关系,必须按照一定的次序进行处理,有时是在一些特定的时间需要某个进程处...

Redis为什么要存两次数据

在 Redis 中,有一种数据类型,当在存储的时候会同时采用两种数据结构来进行分别存储,那么 Redis 为什么要这么做呢?这么做会造成同一份数据占用两倍空间吗? 五种基本类型之集合对象 Redis 中的集合对象是一个包含字符串类型元素的无序集合,集合中元...

Redis 彻底禁用RDB持久化操作

Redis 禁用RDB持久化 Redis是默认开启RDB的,AOF则是默认关闭的。如果需要关闭RDB,将Redis完全作为一个缓存使用,需要修改配置项save。 开启save “”, 将save 900 1、save 300 10、save 60 1000...

Redis主从复制详解

单机Redis存在的问题 无法故障转移 ,无法避免单点故障 磁盘空间的瓶颈 QPS瓶颈 Redis主从复制的作用 提供数据副本 扩展读性能 配置方法 通过命令 通过配置文件 演示 为方便演示,在一台服务器上搭建redis主从(生产上不会这样做),根据端口区...

redis分布式锁之可重入锁的实现代码

上篇redis实现的分布式锁,有一个问题,它不可重入。 所谓不可重入锁,即若当前线程执行某个方法已经获取了该锁,那么在方法中尝试再次获取锁时,就会获取不到被阻塞。 同一个人拿一个锁 ,只能拿一次不能同时拿2次。 1、什么是可重入锁?它有什么作用? 可重入锁...