标签:Redis相关的结果107条:

    缓存重构 – 减少Redis Key的数量

      缓存重构 – 减少Redis Key的数量前不久重构系统的时候,发现redis的key已经超过5000万个了,已经没法用keys做遍历了,即使用迭代器*scan做遍历,开销也大到无法接受了。对业务我是相当熟悉的,我很确定我们不需要这么多的key,于是着手开始清理。首先我跑了个脚本,统计出最常见的key的前缀,发现有两类最多,都超过1000万,分别是carbrand_udid_,缓存的是每个用户的绑定了车牌的车型1100_341_,缓存的是…

    发布于:2019-10-27 01:45:34

    redis 突然大量逐出导致读写请求block

      现象redis作为缓存场景使用,内存耗尽时,突然出现大量的逐出,在这个逐出的过程中阻塞正常的读写请求,导致redis短时间不可用;背景redis中的LRU是如何实现的?当mem_used内存已经超过maxmemory的设定,对于所有的读写请求,都会触发redis.c/freeMemoryIfNeeded(void)函数以清理超出的内存。这个清理过程是阻塞的,直到清理出足够的内存空间。这里的LRU或…

    发布于:2019-10-27 01:29:16

    Django中Mysql Redis连接池

      MySQL连接对Django服务进行压测,DB报错数据库连接数过多,如果设置MySQL的最大连接数为1000,很快连接数就会达到上限,调整到2000,也很快连接数达到上限。xuetangxDB最大连接数2048mysql>showvariableslike'max_connections';+-----------------+-------+|Variable_name|Value|+--…

    发布于:2019-10-27 01:07:05

    Redis命令行遍历所有key方法

      最常见的指令是:keys前缀*后面的参数跟通配符来列出所有符合的key。由于KEYS命令一次性返回所有匹配的key,所以,当redis中的key非常多时,对于内存的消耗和redis服务器都是一个隐患,对于Redis2.8以上版本给我们提供了一个更好的遍历key的命令SCAN该命令的基本格式:SCANcursor[MATCHpattern][COUNTcount]SCAN每次执行都只会返回少量元素,…

    发布于:2019-10-27 00:41:51

    Redis性能优化tips

      读完了Redis实战,感觉收获还是蛮多的。像往常那样,读完就想将书束之高阁。这几天总感觉差点什么,于是又翻了一下这本书,打算记录书上和自己知道的关于Redis优化的小知识点。数据持久化选择恰当的持久化方式。Redis提供RDB和AOF两种持久化方式。用户需要根据实际场景对两种持久化方式进行考量和选择。RDB会在一定时间间隔内一次性将内存中的所有数据刷到磁盘上,非增量。它的一个主要缺点是如果Redi…

    发布于:2019-10-27 00:27:29

    Redis实现数据库读写分离

      Redis实现数据库读写分离Redis是一种NoSQL的文档数据库,通过key-value的结构存储在内存中,Redis读的速度是110000次/s,写的速度是81000次/s,性能很高,使用范围也很广。下面用一个实例实现redis的读写分离,步骤如下:第一步:下载redis官网下载地址:https:/edis.io/download下载最新的稳定版,解压拷贝到~edis中编译代码:$make$test第二步:配置redis…

    发布于:2019-10-27 00:02:06

    使用 Docker Compose 本地部署基于 Sentinel 的高可用 Redis 集群

      说明项目地址:github.com/TomCzHene…根据官方文档RedisSentinelDocumentation中的Example2:basicsetupwiththreeboxes示例创建的实例,但因为是单机部署,所以不满足Redis实例与Sentinel实例分别处于3台机器的要求,因此仅用于开发环境测试与学习。使用方法使用docker-composeup-d部署运行。使用docker-…

    发布于:2019-10-26 22:42:38

    设置Redis最大占用内存

      设置Redis最大占用内存Redis需要设置最大占用内存吗?如果Redis内存使用超出了设置的最大值会怎样?设置Redis最大占用内存Redis设置最大占用内存,打开redis配置文件,找到如下段落,设置maxmemory参数,maxmemory是bytes字节类型,注意转换。修改如下所示:#Inshort...ifyouhaveslavesattacheditissuggestedthatyou…

    发布于:2019-10-24 23:52:48

    redis数据迁移方案

      一、主从复制二、数据文件拷贝1、copydump.rdb到目标主机dump.rdb存储目录下后启动redis服务$scp/var/libedis/dump.rdbuser@ip:/var/libedis/dump.rdb#登录目标主机后重启redis服务$dockerrestartredis2、启动aof模式,copyappendonly.aof到目标主机redis数据存储目录下后$redis-c…

    发布于:2019-10-24 23:26:31

    redis分布式锁实践

      redis分布式锁实践分布式锁在多实例部署,分布式系统中经常会使用到,这是因为基于jvm的锁无法满足多实例中锁的需求,本篇将讲下redis如何通过Lua脚本实现分布式锁,不同于网上的redission,完全是手动实现的我们先来看一个无锁的情况下会导致什么问题:这是一个普通的更新用户年龄的功能,各层代码如下,访问controller层,一个更新,一个查询这是service层,我们使用contdownlatch发令枪来模拟…

    发布于:2019-10-24 23:06:19

    redis刷磁盘可能会导致瞬时无法连接

      业务日志监控中报告,每天会有大约250次连接redis失败.通过strace追踪发现.故障的时间点时写磁盘时间超过了10s.一般在10-15s之间.redis第二次重试使用的是10s.这个实例所有的操作都是INCR,fdatasync会block写.strace-Ttt-f-p11302-T-etrace=fdatasync1130910:21:31.153900fdatasync(116)=0&…

    发布于:2019-10-24 23:02:16

    CentOS下安装Redis并设置密码外网访问

      CentOS下安装Redis并设置密码外网访问在windows下,下载redis直接运行redis-server.exe即可,方便快捷。rediswindowsCentos下安装redis稍微复杂一点。redis的官网https:/edis.io/先获取到redishttp://download.redis.ioeleasesedis-4.0.9.tar.gz然后解压编译安装tarxzfredis-4.0.9.tar.gzcdredis-4.…

    发布于:2019-10-24 22:35:50

    Ubuntu apt 安装redis 修改redis配置

      apt安装redissudoaptupdatesudoaptinstallredis-server安装完成默认是启动了redis服务关闭sudoserviceredis-serverstop开启服务sudoservcieredis-serverstart重启sudoserviceredis-serverrestartredis简单使用redis-cli修改redis配置远程访问sudovim/et…

    发布于:2019-10-24 11:48:37

    配置 PHP 的 Session 存储到 Redis

      PHP的会话默认是以文件的形式存在的,可以配置到NoSQL中,即提高了访问速度,又能很好地实现会话共享,,,爽歪歪!配置方式如下:方法一:修改php.ini的设置session.save_handler=redissession.save_path="tcp://127.0.0.1:6379"修改完之后,重启一下php-fpm。方式二:通过ini_set()函数设置ini_set("session…

    发布于:2019-10-24 06:35:33

    redis缓存同步小伎俩

      redis做缓存分为被动和主动两种,今天要说的是被动+主动结合的一个小伎俩。主动+被动结合,有2种常见做法:set流派查询时,先查redis,不命中再查mysql,将结果set到redis里缓存TTL时间更新时,先更新mysql,再set到redis里缓存TTL时间delete流派查询流程同上更新时,先更新mysql,再去redis里做delete删除掉缓存set流派适合应付读热点的场景,不希望因…

    发布于:2019-10-24 06:28:44

    Redis 备份、容灾及高可用实战

      Redis 备份、容灾及高可用实战Redis已经大量应用于各种互联网架构场景中,其优异的性能,良好的操作性,以及大量的场景应用案例,使得Redis备受瞩目。本文作者向大家介绍了一种Redis在非大集群分布式应用场景下的灾备解决方案。一起来品读一下吧~一,Redis简单介绍Redis是一个高性能的key-value非关系型数据库,由于其具有高性能的特性,支持高可用、持久化、多种数据结构、集群等,使其脱颖而出,成为常用的非关系型数据库…

    发布于:2019-10-24 03:13:05