Redis进阶-bind参数详解

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: Redis进阶-bind参数详解


redis.conf

Redis Version: 5.0.3

毫无疑问,看官方的配置文件的解读 .

bind 配置的是 redis server 网卡的地址 ,配置哪个网卡地址,你就可以通过哪个网卡地址访问redis ,而不是外部访问redis的ip 列表。

可以看到,我这个主机上有两个网卡,1个是回环地址 127.0.0.1 ,另外一个是 eno16777736对应的192.168.18.130 。

所以 bind 建议配置 : 127.0.0.1 192.168.18.130


验证bind

bind 127.0.0.1

假设我们使用默认的配置文件,即bind 127.0.0.1 .

启动redis后 , 在redis server本机上访问 redis server

[redis@artisan bin]$ ./redis-cli 
127.0.0.1:6379> 
127.0.0.1:6379> set artisanK artisanV
OK
127.0.0.1:6379> 

redis server 本机客户端 可以连接操作 。


我们尝试使用代码或者RedisDesktopManager访问下 192.168.18.130

Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.data.redis.RedisConnectionFailureException: Unable to connect to Redis; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to 192.168.18.130:6379] with root cause

外部通过 192.168.18.130 无法访问,因为你配置了bind 127.0.0.1 这个回环网卡地址,redis server 只接收这个网卡过来的连接。


bind 192.168.18.130

外部通过 192.168.18.130 可以访问,因为你配置了bind 192.168.18.130,redis server 只接收这个网卡过来的连接。


redis server 本机

停止redis 服务也要通过 -h 指定ip

那怎么访问呢? 通过 -h 指定ip

本机访问redis 居然不行。。。因为你配置了bind 192.168.18.130,redis server 只接收这个网卡过来的连接,没有配置 127.0.0.1 这个网络地址,redis server 自然不会接收这个回环地址发送过来的连接请求。


bind 192.168.18.130 127.0.0.1

[redis@artisan bin]$ ./redis-cli 
127.0.0.1:6379> set artisanKey artisanValue
OK
127.0.0.1:6379> get artisanKey
"artisanValue"
127.0.0.1:6379> 
127.0.0.1:6379> 

外部通过 192.168.18.130 可以访问,本机通过127.0.0.1 可以访问。 因为你配置了bind 127.0.0.1 192.168.18.130,redis server 只接收192.168.18.130 27.0.0.1 这两个网卡过来的连接。

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
6月前
|
存储 缓存 Java
【Spring原理高级进阶】有Redis为啥不用?深入剖析 Spring Cache:缓存的工作原理、缓存注解的使用方法与最佳实践
【Spring原理高级进阶】有Redis为啥不用?深入剖析 Spring Cache:缓存的工作原理、缓存注解的使用方法与最佳实践
|
6月前
|
NoSQL Java Redis
Redis进阶-Jedis以及Spring Boot操作 Redis 5.x Cluster
Redis进阶-Jedis以及Spring Boot操作 Redis 5.x Cluster
106 0
|
1月前
|
JSON NoSQL Java
springBoot:jwt&redis&文件操作&常见请求错误代码&参数注解 (九)
该文档涵盖JWT(JSON Web Token)的组成、依赖、工具类创建及拦截器配置,并介绍了Redis的依赖配置与文件操作相关功能,包括文件上传、下载、删除及批量删除的方法。同时,文档还列举了常见的HTTP请求错误代码及其含义,并详细解释了@RequestParam与@PathVariable等参数注解的区别与用法。
|
1月前
|
存储 缓存 NoSQL
大数据-46 Redis 持久化 RDB AOF 配置参数 混合模式 具体原理 触发方式 优点与缺点
大数据-46 Redis 持久化 RDB AOF 配置参数 混合模式 具体原理 触发方式 优点与缺点
56 1
|
5月前
|
NoSQL Java Redis
redis连接池参数
如果系统启动完马上就会有很多的请求过来,那么可以给redis连接池做预热,比如快速的创建一些redis连接,执行简单命令,类似ping(),快速的将连接池里的空闲连接提升到minldle的数量。
148 0
|
3月前
|
缓存 NoSQL 测试技术
【Azure Redis 缓存】Azure Redis 功能性讨论三: 调优参数配置
【Azure Redis 缓存】Azure Redis 功能性讨论三: 调优参数配置
|
3月前
|
缓存 NoSQL 网络协议
【Azure Redis 缓存】如何使得Azure Redis可以仅从内网访问? Config 及 Timeout参数配置
【Azure Redis 缓存】如何使得Azure Redis可以仅从内网访问? Config 及 Timeout参数配置
|
5月前
|
NoSQL 数据可视化 Java
rodert单排学习redis进阶【白银一】
rodert单排学习redis进阶【白银一】
27 0
|
5月前
|
NoSQL Redis 数据库
rodert单排学习redis进阶【青铜】2
rodert单排学习redis进阶【青铜】
32 0
|
5月前
|
缓存 NoSQL Java
rodert单排学习redis进阶【青铜】1
rodert单排学习redis进阶【青铜】
39 0