Redis简介
Redis是一个基于key-value存储结构的内存数据库,主要用于构建高性能,可扩展的Web应用程序。其主要特点如下:
Redis支持五种数据类型,字符串(String)、链表(List)、集合(Set)、有序集合(Sorted Set)、哈希表(Hashes)。单个value最大支持512MB。
Redis支持数据按多种排序方式缓存在内存中,使用磁盘进行持久化,且支持一定的逻辑运算。
Redis支持push/pop、add/remove,取交集并集和差集等操作,且操作都是原子性的,这样能保证多客户端并发操作时,Redis服务器能接收更新的值。
Redis支持按设置周期将存储数据写入磁盘或者把修改操作写入追加的记录文件,并且在此操作基础上实现了master-slave(主从)同步,支持将数据复制到任意数量的从机中。
Redis支持超过 100K+ /秒的读写频率。
Redis支持集群分布式,能均衡客户端的并发请求,支持多节点交流,可拓展行、可维护性更强大。
开发环境
本实践教程主要基于Java Web开发过程实践Redis的使用,采用的基础环境如下: JDK 1.8.0_101 Maven 3.3.9 MyEclipse 2016 Tomcat 8.0.47 Spring 4.3.12.RELEASE Redis 3.0.504
Redis安装与配置
1.下载Redis 实践环境的Redis部署在OS为Windows Server或CentOS的机器上,本章节我们主要介绍基于Windows安装和配置Redis,因此我们只需要下载安装即可。 官方软件包地址是 https://redis.io/download,但是由于官网只支持Linux版本的下载,需要在Windows上安装的只能去github下载,github下载地址:https://github.com/MSOpenTech/redis/tags。
目前Redis最新预发布的版本是3.2.100,我们采用最新release的Redis 3.0.504。我们下载Redis-x64-3.0.504.zip,注意版本支持的是64位的OS。
解压后文件夹内容如下:
上图中主要的文件分别是:
redis.windows.conf # 客户端配置文件
redis.windows-service.conf # 服务端配置文件
redis-benchmark.exe # 基准测试
redis-check-aof.exe # aof
redischeck-dump.exe # dump
redis-cli.exe # 客户端
redis-server.exe # 服务器
2.启动Redis 执行文件redis-server.exe即可完成Redis的启动,启动成功后弹出的dos窗口如下图:
上图显示了Redis的版本信息,运行模式,端口等信息。 在服务器上启动Redis,也就启动了Redis服务,如果dos窗口关闭,Redis服务也会停止。
3.测试Redis 我们通过测试读写的方式来验证Redis是否安装正确。 首先启动Redis客户端redis-cli.exe,向Redis中写入一个键值对,语句如下:
set name RedisTester
回车后会返回写入成功信息OK,再读取写入的键值,语句如下:
get name
测试效果如下图:
Redis的安装较简单,如果安装失败或者不能达到预期效果,一般是运行环境的问题,考虑Redis运行的OS与安装版本不匹配或者运行权限不够。
4.设置Redis服务
在服务端运行的Redis如果担心误操作关闭了dos窗口,可以将Redis设置成Windows服务,这样则可以让服务自动运行,或者随主机启动。
启动cmd进入命令行窗口,将路径转到redis-server文件夹下,输入服务安装命令,来完成服务安装。安装命令如下:
redis-server --service-install redis.windows-service.conf --loglevel verbose
上图分别是执行过程和执行结果,完成服务设置后,即可在windows服务中管理Redis服务。
5.其他设置
Redis常见的一些配置还有修改端口号,设置密码,设置绑定的密码等,Redis客户端和服务端的配置类似,我们以客户端配置来说明如何具体操作。
修改端口号
在客户端配置文件redis.windows.conf中,找到端口设置位置,可以修改默认端口号6379为其他,见下图:
修改端口号后,需要重启Redis服务,并且需要重读配置文件,才能完成端口号设置。重读配置方法为在cmd窗口中转到Redis文件目录,执行如下语句:
redis-server.exe redis.windows.conf
执行过程和结果如下图:
设置绑定IP
在客户端配置文件redis.windows.conf中,设置绑定IP,表示只允许该ip进行访问,同时该配置是支持配置多个IP,支持Redis服务端绑定外网IP提供远程访问服务。配置情况如下图:
设置Redis密码
找到配置文件中的requirepass,设置密码,重读配置文件完成密码设置。配置情况如下图:
设置密码后,进行Redis操作,会提示“(error) NOAUTH Authentication required.”,需要执行 auth password 来完成操作前认证。
设置最大占用内存
找到配置文件中的maxmemory,设置maxmemory参数,maxmemory是bytes字节类型,注意转换单位。例如设置最大占用内存为200MB,配置情况如下图:
同样需要重读配置文件完成设置。
Redis Desktop Manager安装
Redis Desktop Manager是一个Redis桌面管理工具,支持命令控制台操作,以及常用,查询key,rename,delete等操作。官网下载地址是https://redisdesktop.com/download。
这个工具也是开源的,并托管在github上(https://github.com/uglide/RedisDesktopManager),下载匹配版本按一般软件方式安装即可。安装后,配置连接Redis后即可操作,配置界面如下:
在Redis连接上右键--Reload,即可查看到Redis管理的key-value,界面效果如下:
我们可以很方便的在Redis Desktop Manager中进行按筛选条件查询key,add new key,reload等操作,也可以对目标key执行rename,delete,addrow,reload value操作。 关于Redis的安装和配置就介绍到这里,后续我将基于Java连接Redis来进行Redis实践,欢迎大家沟通交流。