Redis介绍、安装、客户端

article/2025/9/20 8:14:09

1. Redis介绍
  1.1 什么是NoSql
  为了解决高并发、高可用、高可扩展,大数据存储等一系列问题而产生的数据库解决方案,就是NoSql。NoSql,叫非关系型数据库,它的全名Not only sql。它不能替代关系型数据库,只能作为关系型数据库的一个良好补充。
  1.2 NoSql的分类
  1. 键值(Key-Value)存储数据库
  相关产品: Tokyo Cabinet/Tyrant、Redis、Voldemort、Berkeley DB
  典型应用: 内容缓存,主要用于处理大量数据的高访问负载。
  数据模型: 一系列键值对
  优势: 快速查询
  劣势: 存储的数据缺少结构化
  2. 列存储数据库
  相关产品:Cassandra, HBase, Riak
  典型应用:分布式的文件系统
  数据模型:以列簇式存储,将同一列数据存在一起
  优势:查找速度快,可扩展性强,更容易进行分布式扩展
  劣势:功能相对局限
  3. 文档型数据库
  相关产品:CouchDB、MongoDB
  典型应用:Web应用(与Key-Value类似,Value是结构化的)
  数据模型: 一系列键值对
  优势:数据结构要求不严格
  劣势:查询性能不高,而且缺乏统一的查询语法
  4. 图形(Graph)数据库
  相关数据库:Neo4J、InfoGrid、Infinite Graph
  典型应用:社交网络
  数据模型:图结构
  优势:利用图结构相关算法。
  劣势:需要对整个图做计算才能得出结果,不容易做分布式的集群方案。

  1.3 什么是Redis
  Redis是使用c语言开发的一个高性能键值(k/v)数据库。Redis可以通过一些键值类型来存储数据。Value的数据类型有:
  String字符类型
  map散列类型
  list列表类型
  set集合类型
  sortedset有序集合类型

  1.4 Redis的应用场景
  缓存(数据查询、短连接、新闻内容、商品内容等等)。(最多使用)
  分布式集群架构中的session分离。
  聊天室的在线好友列表。
  任务队列。(秒杀、抢购、12306等等)
  应用排行榜。
  网站访问统计。
  数据过期处理(可以精确到毫秒)

2. Redis安装
  2.1 Redis下载
  官网地址:http://redis.io/
  下载地址:http://download.redis.io/releases/redis-3.0.0.tar.gz

  2.2 Redis安装
  redis安装到linux系统中。
  第一步:安装虚拟机软件,并在虚拟机上创建一台安装Linux操作系统的机器。
  第二步:将redis的压缩包,上传到linux系统。
  第三步:对redis的压缩包进行解压缩。Redis解压缩之后的文件是用c语言写的源码文件。
  root@zhaojd:/usr/local/redis# tar -zxf redis-3.0.0.tar.gz
  第四步:安装c语言环境(安装linux操作系统之后,自带c语言环境,所以这一步可省略)
  [root@zhaojd ~]# yum install gcc-c++
  第五步:编译redis源码
  root@zhaojd:/usr/local/redis/bin# cd redis-3.0.0
  root@zhaojd:/usr/local/redis/bin# make
  第六步:安装redis(PREFIX指定安装目录)
  root@zhaojd:/usr/local/redis/bin# make install PREFIX=/usr/local/redis
  第七步:查看是否安装成功
  该目录 /usr/local/redis 下有bin 目录即说明redis已经安装。

  2.2 Redis服务的启动
   2.2.1 前端启动
  前端启动的命令:

root@zhaojd:/usr/local/redis/bin# ./redis-server 

  前端启动的关闭:

强制关闭:Ctrl + C
正常关闭:root@zhaojd:/usr/local/redis/bin# ./redis-cli shutdown

  一旦客户端关闭,则redis服务也停掉。
   2.2.2 后端启动
  第一步:需要将redis解压之后的源码包中的redis.conf文件拷贝到安装目录下的bin目录下。
  第二步:修改redis.conf文件,将daemonize改为yes。
  第三步:使用命令后端启动redis。
  root@zhaojd:/usr/local/redis/bin# ./redis-server redis.conf
  第四步:查看是否启动成功
  ps -aux | grep redis
  关闭后端启动的方式:
  强制关闭:root@zhaojd:/usr/local/redis/bin# kill -9 PID(第四步的查看命令看到的)
  正常关闭:root@zhaojd:/usr/local/redis/bin# ./redis-cli shutdown
3. Redis客户端
  3.1 Redis自带的客户端
  1. 启动
  启动客户端命令:root@zhaojd:/usr/local/redis/bin# ./redis-cli -h 127.0.0.1 -p 6379
  -h:指定访问的redis服务器的ip地址
  -p:指定访问的redis服务器的port端口
  还可以写成:root@zhaojd:/usr/local/redis/bin# ./redis-cli
使用默认配置:默认的ip【127.0.0.1】,默认的port【6379】
  2. 关闭
  Ctrl+c
  127.0.0.1:6379> quit

  3.2 图形界面客户端
  下载图形界面客户端:redis-desktop-manager-0.8.0.3841.exe。安装后打开如下图填写信息,即可连接redis数据库。这里写图片描述
  3.3 Jedis客户端
   3.3.1 Jedis介绍
    Redis不仅是使用命令来操作,现在基本上主流的语言都有客户端支持,比如java、C、C#、C++、php、Node.js、Go等。在官方网站里列一些Java的客户端,有Jedis、Redisson、Jredis、JDBC-Redis、等其中官方推荐使用Jedis和Redisson。 在企业中用的最多的就是Jedis,下面我们就重点学习下Jedis。 Jedis同样也是托管在github上,地址:https://github.com/xetorthio/jedis 需要加如的jar包:commons-pool2-2.3.jar jedis-2.7.0.jar

//测试代码:
package cn.keymobile;import org.junit.Test;import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;public class JedisCilent {@Testpublic void jedisClient() throws Exception {Jedis jedis = new Jedis("192.168.17.136", 6379);jedis.set("key2", "222");String val = jedis.get("key2");System.out.println(val);jedis.close();}@Testpublic void jedisPool() throws Exception {JedisPool pool = new JedisPool("192.168.17.136", 6379);Jedis jedis = pool.getResource();jedis.set("key3","333");String val = jedis.get("key3");System.out.println(val);jedis.close();pool.close();}
}

  Spring整合jedisPool
  1. 添加spring的jar包
  2. 配置spring配置文件applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"xmlns:context="http://www.springframework.org/schema/context"xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd "><!-- 连接池配置 --><bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig"><!-- 最大连接数 --><property name="maxTotal" value="30" /><!-- 最大空闲连接数 --><property name="maxIdle" value="10" /><!-- 每次释放连接的最大数目 --><property name="numTestsPerEvictionRun" value="1024" /><!-- 释放连接的扫描间隔(毫秒) --><property name="timeBetweenEvictionRunsMillis" value="30000" /><!-- 连接最小空闲时间 --><property name="minEvictableIdleTimeMillis" value="1800000" /><!-- 连接空闲多久后释放, 当空闲时间>该值 且 空闲连接>最大空闲连接数 时直接释放 --><property name="softMinEvictableIdleTimeMillis" value="10000" /><!-- 获取连接时的最大等待毫秒数,小于零:阻塞不确定的时间,默认-1 --><property name="maxWaitMillis" value="1500" /><!-- 在获取连接的时候检查有效性, 默认false --><property name="testOnBorrow" value="false" /><!-- 在空闲时检查有效性, 默认false --><property name="testWhileIdle" value="true" /><!-- 连接耗尽时是否阻塞, false报异常,ture阻塞直到超时, 默认true --><property name="blockWhenExhausted" value="false" /></bean><!-- redis单机 通过连接池 --><bean id="jedisPool" class="redis.clients.jedis.JedisPool"destroy-method="close"><constructor-arg name="poolConfig" ref="jedisPoolConfig" /><constructor-arg name="host" value="192.168.242.130" /><constructor-arg name="port" value="6379" /></bean>
</beans>
@Testpublic void testJedisPool() {JedisPool pool = (JedisPool) applicationContext.getBean("jedisPool");Jedis jedis = null;try {jedis = pool.getResource();jedis.set("name", "lisi");String name = jedis.get("name");System.out.println(name);} catch (Exception ex) {ex.printStackTrace();} finally {if (jedis != null) {// 关闭连接jedis.close();}}}

http://chatgpt.dhexx.cn/article/TnKa8MwK.shtml

相关文章

redis安装+客户端

redis安装客户端 1.安装redi2.安装redis客户端 1.安装redi 1&#xff09;资源下载地址 Redis安装包&#xff1a;https://github.com/MicrosoftArchive/redis/releases 2&#xff09; 下载&#xff0c;解压安装包到相应的文件夹&#xff0c;任一盘符都可以。 接下来对文件夹中的…

Redisson--最好用的Redis客户端--介绍

原文网址&#xff1a;Redisson--最好用的Redis客户端--介绍_IT利刃出鞘的博客-CSDN博客 简介 说明 本文介绍Redisson这款最好用的Redis客户端。 官网 官网&#xff1a;Redisson: Redis Java client with features of In-Memory Data Grid git&#xff1a;https://github.co…

redis的客户端

关系型数据库存储在磁盘当中&#xff0c;非关系型数据库存储在内存中 Jedis 第一步&#xff1a;导入依赖包 <dependencies><dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>3.7.0</vers…

【Redis】客户端RedisClient

0. 目录 1. 下载2. 运行 RedisClient3.1. 链接服务器 1. 下载 官网下载&#xff1a;https://github.com/caoxinyu/RedisClient 因为我已经安装了jdk或者jre&#xff0c;所以我只用jar包版本。 我用迅雷下载&#xff0c;比较快。当然你可以用我下载好的。 百度云盘&#xff1a;…

redis:客户端管理

机制 redis提供了一些操作客户端的命令&#xff0c;比如查询所有已连接到服务端的客户端数量&#xff0c;控制客户端的连接状态&#xff08;关闭或者挂起&#xff09;等。通过客户命令我们可以轻松实现对客户端的管理、控制。 redis服务器通过监听TCP端口的方式来接收客户端连…

windows下redis可视化客户端

Redis是一个超精简的基于内存的键值对数据库(key-value)&#xff0c;一般对并发有一定要求的应用都用其储存session&#xff0c;乃至整个数据库。 redis的可视化客户端目前较流行的有三个&#xff1a;Redis Client ; Redis Desktop Manager ; Redis Studio. Redis Desktop Ma…

Redis(四) - Redis的Java客户端

文章目录 一、Redis的Java客户端二、Jedis客户端1. 快速入门&#xff08;1&#xff09;引入依赖&#xff08;2&#xff09;创建jedis对象&#xff0c;建立连接&#xff08;3&#xff09;测试&#xff0c;方法名与Redis命令一致&#xff08;4&#xff09;释放资源 2. Jedis连接池…

Redis可视化客户端汇总

因为 Redis 官方只提供了命令行版的 Redis 客户端 redis-cli&#xff0c;以至于我们在使用的时候会比较麻烦&#xff0c;通常要输入一堆命令&#xff0c;而且命令行版的客户端看起来也不够直观&#xff0c;基于以上两个原因我们需要找一个可视化的 Redis 客户端&#xff0c;下面…

redis客户端连接工具RedisDesktop安装

redis客户端连接工具RedisDesktop安装手册: RedisDesktop官方下载地址&#xff1a; https://redisdesktop.com/download 但是需要付费 这里提供一个可以免费下载的地址&#xff1a;https://pan.baidu.com/s/1ExBlD79pfypnqAeP1sXybg 下载后解压如下&#xff1a; 安装此文件&…

Redis客户端 - RedisSerializer

原文首更地址&#xff0c;阅读效果更佳&#xff01; Redis客户端 - RedisSerializer | CoderMast编程桅杆https://www.codermast.com/database/redis/redistemplate-redis-serializer.html 前景回顾 在上一篇中&#xff0c;我们实现了一个简单的案例&#xff0c;操作一个 St…

Redis(11)----Redis客户端

1&#xff0c;前言 Redis服务器是典型的一对多服务器&#xff1a;一个服务器可以与多个客户端建立网络连接&#xff0c;每个客户端可以向服务器发送命令请求&#xff0c;而服务器则接收并处理客户端发送的命令请求&#xff0c;并向客户端返回命令回复 通过使用由I/O多路复用技…

redis-客户端

redis-客户端 1、客户端属性 redis> CLIENT listaddr127.0.0.1:53428 fd6 name age1242 idle0 ... addr127.0.0.1:53469 fd7 name age4 idle4 ...typedef struct redisClient {// ...int fd;robj *name;int flags;sds querybuf;robj **argv;int argc;struct redisCommand …

Mac上好用的redis客户端推荐

推荐mac一个开源免费、好用的redis客户端&#xff1a;QuickRedis 它支持直连、哨兵、集群模式&#xff0c;并且UI是可以的&#xff0c;并且支持树形展示,同时支持json格式展示&#xff0c; 最基本的命令行模式也支持&#xff0c;总体来说界面简洁、功能完善&#xff0c;值得推…

Redis管理客户端,兼容Windows、Mac、Linux

真正的大师,永远都怀着一颗学徒的心&#xff01; 一、项目简介 Redis管理客户端&#xff0c;兼容Windows、Mac、Linux 二、实现功能 支持自定义文本视图 支持哨兵支持 Hash List Set Zset搜索支持 支持自动更新 支持SSH 通道支持 支持精确搜索 单链接支持 支持Redis&g…

用Redis客户端工具连接Redis

进入redis安装目录 vi redis.conf1.关闭默认的只允许本地登录 2.关掉保护模式 3.requirepass注释去掉&#xff0c;修改密码 4. 开启redis后台运行 5.安装redis客户端连接工具 6.确保 Linux 防火墙已经关闭&#xff0c;再连接redis systemctl stop firewalld.service syste…

【Redis入门篇】| Redis的Java客户端

目录 一&#xff1a; Redis的Java客户端 1. Jedis快速入门 2. Jedis连接池 3. SpringDataRedis快速入门 4. RedisSerializer配置 5. StringRedisTemplate 图书推荐 一&#xff1a; Redis的Java客户端 在Redis官网中提供了各种语言的客户端&#xff0c;地址&#xff1a;…

redis客户端

1、redis-cli redis自己给我们提供的一个命令行客户端 2、Java客户端-Jedis 是一个Redis的java客户端&#xff08;Java for Redis&#xff09;&#xff0c;老牌的、稳定、封装少的客户端 导包 <!-- https://mvnrepository.com/artifact/redis.clients/jedis --><d…

Redis可视化客户端

Redis是一个超精简的基于内存的键值对数据库(key-value)&#xff0c;一般对并发有一定要求的应用都用其储存session&#xff0c;乃至整个数据库。 redis的可视化客户端目前较流行的有三个&#xff1a;Redis Client ; Redis Desktop Manager ; Redis Studio. Redis Desktop Ma…

【Redis学习笔记(九)】之 Redis客户端详解

文章目录 本文章由公号【开发小鸽】发布&#xff01;欢迎关注&#xff01;&#xff01;&#xff01;一&#xff0e; 客户端&#xff08;一&#xff09; 概述&#xff08;二&#xff09; 客户端属性1. 套接字描述符2. 名字3. 标志4. 输入缓冲区5. 命令与命令参数6. 命令的实现函…

[Redis]Redis客户端

文章目录 1. Redis 客户端2. Redis 命令行客户端2.1 redis-cli 的使用2.1.1 进入 redis-cli 交互控制台方式一2.1.1 进入 redis-cli 交互控制台方式二 3. Redis 图形化桌面客户端3.1 Redis 图形化桌面客户端下载3.2 Redis 图形化桌面客户端安装3.3 Redis 图形化桌面客户端连接 …