暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

记录阿里云ECS部署单节点Redis与Spring boot 远程连接

Java架构师编程 2018-09-02
457

背景:想在自己的ECS上搭建个Redis 单节点用来开发测试,需要本地(windows 开发环境)远程连接ECS上的Redis。

安装Redis:

参考官网教材安装先在ECS实例上下载打包好:

http://www.redis.cn/download.html


这里需要修改redis.conf 配置文件:

  1. 将 bind 127.0.0.1 注释 。这是要求Redis 只允许内网本地访问,我这里需要通过公网访问,故注释掉。

  2. 找到 # requirepass foobared,将注释打开,并修改密码 foobared   为自己设置的密码,注意这里要设置的很复杂,避免被扫描暴力破解(最好将默认port 6379 也改了)。但更主要的是,ECS要设置SSL 链接。

  3. 设置daemonize 为yes,让redis 在启动的时候,以守护进程的方式运行。


启动redis :

在redis 根路径下执行:

./bin/redis-server  /home/***/conf/redis.conf


注意 我们修改了redis的conf 文件,要让其生效,必须在 后面追加 conf的全路径。

通过redis-cli链接 redis server,测试一下是否启动成功

./bin/redis-cli -h yourIp -p yourPort -a youpassword//启动redis客户端,并连接服务器 redis默认端口6379


在spring boot 中的配置逻辑:

这里沿用 Spring MVC中的xml 配置:

构建一个Spring boot 工程后,在resources 文件夹下,创建

application-bean.xml


这里用Jedis 库操作Redis ,在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"
      xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd">

<!-- Redis -->
   <bean id="configJedisPool" class="redis.clients.jedis.JedisPool">
<constructor-arg index="0">
<bean class="redis.clients.jedis.JedisPoolConfig">
<property name="maxTotal" value="500"/>
<property name="maxIdle" value="10"/>
<property name="maxWaitMillis" value="3000"/>
<property name="testOnBorrow" value="true"/>
<property name="testOnReturn" value="false"/>
</bean>
</constructor-arg>
<constructor-arg index="1" type="java.net.URI" value="${redis.uri}"/>
</bean>
</beans>

在application.properties文件中,添加

redis.uri = redis://:yourPassWord@yourECSIP:yourRedisPort/0

在Spring boot 的 ConfigBeans 中,在@Configuration 同位置 引入xml文件:

@ImportResource(locations={"classpath:application-bean.xml"})

综上即可使用Jedis 链接操作Redis。
如有疑问欢迎后台留言。



文章转载自Java架构师编程,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论