0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Windows环境下使用Redis缓存工具的图文详细方法

lhl545545 来源:电子发烧友网 2018-02-09 14:25 次阅读

一、简介

redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。

这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

Redis 是一个高性能的key-value数据库。redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部分场合可以对关系数据库起到很好的补充作用。

二、下载redis

Redis 官网 :http://redis.io/

下载页面:http://redis.io/download

官方文档:http://redis.io/documentation

Windows 版本下载:https://github.com/dmajkic/redis/downloads

三、环境搭建

1. 放到磁盘里面。

Windows环境下使用Redis缓存工具的图文详细方法

2. 根据操作系统 进入相应的目录 ,启动redis服务端 redis-server.exe redis.conf

Windows环境下使用Redis缓存工具的图文详细方法

3. 根据操作系统 进入相应的目录 ,启动redis客户端。

Windows环境下使用Redis缓存工具的图文详细方法

4. 测试redis缓存机制。

redis-cli.exe -h 127.0.0.1 -p 6379

set keytest valuestest

get keytest

5. 效果如下:

Windows环境下使用Redis缓存工具的图文详细方法

5. 测试调换顺序调用的实例。

这个应用可以用在验证码的校验用以及缓存。

第一个号码 18276487300 发送了一个验证码”1234“,然后存到key-values 里面。

第二个号码 18276487301 发送了一个验证码”2345“,然后存到key-values 里面。

但是第二个验证码先进行验证,所以会先通过18276487301 来获取验证码。

这样就防止了一些验证码不知道对应哪个手机号码了。

Windows环境下使用Redis缓存工具的图文详细方法

后面会根据java配置到项目中应用。

6.如何设置访问密码?

要启动redis客户端,打开终端,输入命令Redis命令行:redis-cli。这将连接到本地服务器,现在就可以运行各种命令了。

Windows环境下使用Redis缓存工具的图文详细方法

四、redis.conf 配置文件

根据操作系统 进入相应的目录 ,会看到一个配置文件redis.conf。

配置文件的原文如下:

View Code

解析过的配置文件:

#是否以后台守护进程运行,默认为no, 取值yes, no

daemonize no

#pid文件存放路径

pidfile /var/run/redis.pid

#配置redis端口,默认6379

port 6379

#绑定ip。默认绑定所有本机ip,一般用在服务器多ip下,可以只监听内网服务器ip,保证服务安全

bind 127.0.0.1

#sock文件

unixsocket /tmp/redis.sock

#客户端超时时间,单位秒

timeout 300

#log级别,支持四个级别,debug,notice,verbose,warning

loglevel verbose

#log文件路径

logfile

#log输出到标准设备,logs不写文件,输出到空设备,/deb/null

logfile stdout

#保存快照的频率,在多长时间内执行一定数量的写操作时,保存快照的频率,可以设置多个条件。如果都注释掉,则不做内存数据持久化。如果只是把redis只用作cache,不开启持久化功能

save

save 900 1

#是否使用压缩

rdbcompression

#快照数据库名称

dbfilename

#数据库存放路径

dir

#redis主从 做法 在从上填上主的IP和端口号 主上不用做任何设置

slaveof

#主库服务器口令,如果主服务器未打开requirepass,则不需要此项

masterauth

#在master服务器挂掉或者同步失败时,从服务器是否继续提供服务

slave-serve-stale-data yes

#设置redis服务密码,如果开启,则客户端连接时需要 -a 指定密码,否则操作会提示无权限

requirepass foobared

#命令改名,相当于linux alias,可以用改功能屏蔽一些危险命令

rename-command

#最大连接数;0 表示不限制

maxclients 128

#最大使用内存(分配的内存),推荐生产环境下做相应调整,我们用的是只用来做高速缓存,限制2G。默认情况下,redis会占用可用的所有内存

maxmemory

#过期策略,提供六种策略

maxmemory-policy volatile-lru

volatile-lru //删除过期和lru 的key(默认值)

allkeys-lru //删除lru算法的key

volatile-random //随机删除即将过期key

allkeys->random //随机删除

volatile-ttl //删除即将过期的

noeviction //永不过期,返回错误

#是否开启appendonlylog,开启的话每次写操作会记一条log。相当于mysql的binlog;不同的是,每次redis启动都会读此文件构建完整数据。即使删除rdb文件,数据也是安全的

appendonly

#日志文件的名称,默认appendonly.aof

appendfilename appendonly.aof

#异步写append file 的策略。类似mysql事物log写方式。三种

appendfsync

appendfsync always //同步,每次写都要flush到磁盘,安全,速度慢。

appendfsync everysec //每秒写(默认值,推荐值)同mysql

appendfsync no //交给操作系统去做flush的动作

#虚拟内存开关

vm-enabled no

#swap文件,不同redis swap文件不能共享。而且生产环境下,不建议放在tmp目录

vm-swap-file /tmp/redis.swap

#vm大小限制。0:不限制,建议60-80% 可用内存大小

vm-max-memory 0

#根据缓存内容大小调整,默认32字节

vm-page-size 32

#page数。每 8 page,会占用1字节内存。vm-page-size * vm-pages 等于 swap 文件大小

vm-pages 134217728

#vm 最大io线程数。注意: 0 标志禁止使用vm

vm-max-threads 4

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Redis
    +关注

    关注

    0

    文章

    356

    浏览量

    10466
收藏 人收藏

    评论

    相关推荐

    linux下Redis常用命令使用

    redis重启,缓存数据还在,redis缓存数据
    的头像 发表于 12-27 09:56 229次阅读
    linux下<b class='flag-5'>Redis</b>常用命令使用

    redis容器内怎么查看redis日志

    redis是一款流行的开源内存数据库,常用于缓存、消息队列、任务管理等场景。在使用redis时,了解如何查看redis日志对于排查问题、监控性能和分析应用程序行为非常重要。在本文中,我
    的头像 发表于 12-05 10:10 1062次阅读

    redis的主要方法

    Redis是一种基于内存的开源键值对存储系统,常用于缓存、消息中间件、数据库等场景。作为一个高性能的NoSQL存储解决方案,Redis提供了丰富的方法用于操作数据。本文将
    的头像 发表于 12-05 09:59 308次阅读

    redis的increment方法

    实现对存储在数据库中的特定键的递增操作。在本文中,我们将详细介绍Redis的 INCR 方法,包括其原理、使用方法以及一些常见的应用场景。 首先,我们来看看
    的头像 发表于 12-05 09:57 302次阅读

    redis的lru原理

    中进行淘汰。下面将详细介绍Redis的LRU原理。 概述 Redis使用一个双向链表来维护缓存中的数据,链表的头部表示最近使用的数据,而链表的尾部表示最久未使用的数据。每当有新的数据被
    的头像 发表于 12-05 09:56 261次阅读

    redis的原理和使用场景

    Redis(Remote Dictionary Server)是一个开源的、高性能的非关系型(NoSQL)的键值对数据库管理系统。它以其快速读写能力和多种数据结构支持而闻名,并被广泛应用于缓存
    的头像 发表于 12-04 16:29 197次阅读

    redis分布式锁三个方法

    Redis是一种高性能的分布式缓存和键值存储系统,它提供了一种可靠的分布式锁解决方案。在分布式系统中,由于多个节点之间的并发访问,需要使用分布式锁来保证数据的一致性和避免冲突。本文将介绍Redis
    的头像 发表于 12-04 11:22 453次阅读

    Redis工具集的实现和使用

    Redis 基本上是互联网公司必备的工具了,Redis的应用场景实在太多了,但是有很多相似的功能如果每个项目都要实现一遍就显得太麻烦了,所以为了方便,我打算开发一个基于 Redis
    的头像 发表于 12-03 17:32 632次阅读
    <b class='flag-5'>Redis</b><b class='flag-5'>工具</b>集的实现和使用

    Redis可视化工具ARDM介绍

    ARDM(Another Redis Desktop Manager) 是一款更快、更好、更稳定的Redis桌面(GUI)管理客户端,兼容Windows、Mac、Linux,性能出众,轻松加载海量键值。
    的头像 发表于 11-28 11:02 458次阅读
    <b class='flag-5'>Redis</b>可视化<b class='flag-5'>工具</b>ARDM介绍

    Redis Enterprise vs ElastiCache——如何选择缓存解决方案?

    使用Redis或AmazonElastiCache来作为缓存加速已经是业界主流的解决方案,二者各有什么优势?又有哪些区别呢?文况速览:Redis是什么?RedisEnterprise
    的头像 发表于 11-26 08:06 161次阅读
    <b class='flag-5'>Redis</b> Enterprise vs ElastiCache——如何选择<b class='flag-5'>缓存</b>解决方案?

    Oracle与Redis Enterprise协同,作为企业缓存解决方案

    单独使用Oracle作为企业缓存数据库时,会出现哪些问题呢?使用Redis Enterprise与Oracle共同用作企业级缓存或副本数据库,会出现哪些喜人的提升呢?Orcle配合使用Redi
    的头像 发表于 11-22 10:00 266次阅读
    Oracle与<b class='flag-5'>Redis</b> Enterprise协同,作为企业<b class='flag-5'>缓存</b>解决方案

    Redis的常用场景有哪些

    Redis的常用场景有哪些? 1、缓存 缓存现在几乎是所有中大型网站都在用的必杀技,合理的利用缓存不仅能够提升网站访问速度,还能大大降低数据库的压力。
    的头像 发表于 10-09 10:44 306次阅读

    MySQL与Redis延迟双删策略

    背景 在当前环境下,通常我们会首选redis缓存来减轻我们数据库访问压力。但是也会遇到以下这种情况:大量用户来访问我们系统,首先会去查询缓存, 如果
    的头像 发表于 09-25 14:28 551次阅读
    MySQL与<b class='flag-5'>Redis</b>延迟双删策略

    redis缓存满了怎么办?

    只有在 Redis 的运行内存达到了某个阀值,才会触发内存淘汰机制,这个阀值就是我们设置的最大运行内存,此值在 Redis 的配置文件中可以找到,配置项为 maxmemory。
    发表于 08-21 10:42 160次阅读
    <b class='flag-5'>redis</b><b class='flag-5'>缓存</b>满了怎么办?

    如何在SpringBoot中解决Redis缓存穿透等问题

    今天给大家介绍一下如何在SpringBoot中解决Redis缓存穿透、缓存击穿、缓存雪崩的问题。
    的头像 发表于 04-28 11:35 499次阅读