Redis的安装(Windows&linux)环境和配置,Spring集成Redis的maven项目配置

昨天完成memcached的缓存压力测试,今天学习Redis缓存

以前没有怎么多的了解这个Redis开始准备安装

v2-098e50cfbc75bc58545854e87ae829a5_b.jpg


现在Windows缓存安装Windows

github.com/MicrosoftArc(下载链接)


v2-86f598986c864406809420046ef7d098_b.jpg


下载解压放在你的电脑里面


v2-1715905b6cb386b23bf259430d1711a2_b.jpg


运行起来的效果


v2-e9be9420c9428dce0ba391595067d834_b.jpg


还有用cmd --->进入安装的目录运行

redis-server.exe redis.windows.conf (也是同样的效果)

接下来在linux(服务器)环境下面安装

redis.io/download(安装步骤)

下载Redis

$ wget download.redis.io/relea


v2-3b79e67b126d37f285c0300920c85c8b_b.jpg

解压

$ tar xzf redis-4.0.8.tar.gz

$ mv redis-4.0.8 /usr $ cd redis-4.0.8

安装 $ make


v2-f2e1523146f73ba50c78e4132fbf738a_b.jpg


启动Redis

$ src/redis-server


v2-d42495222108af5cad2aa51b2c20667c_b.jpg


关闭 Ctrl + C

Redis在Windows平台和linux平台安装成功

接下来准备在前面的项目里面配置Redis缓存机制(替换开始memcached)

blog.csdn.net/tomcat_20(参考文档)

blog.csdn.net/l10283868(参考文档)

maven 添加相关的jar包

<!--redis-->

<dependency>

<groupId>org.springframework.data</groupId>

<artifactId>spring-data-redis</artifactId>

<version>1.7.2.RELEASE</version>

</dependency>

<dependency>

<groupId>redis.clients</groupId>

<artifactId>jedis</artifactId>

<version>2.8.1</version>

</dependency>

添加redis.properties

#访问地址

redis.host=47.94.***.**

#访问端口

redis.port=6379

#注意,如果没有password,此处不设置值,但这一项要保留

redis.password=


#最大空闲数,数据库连接的最大空闲时间。超过空闲时间,数据库连接将被标记为不可用,然后被释放。设为0表示无限制。

redis.maxIdle=300

#连接池的最大数据库连接数。设为0表示无限制

redis.maxActive=600

#最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示无限制。

redis.maxWait=1000

#在borrow一个jedis实例时,是否提前进行alidate操作;如果为true,则得到的jedis实例均是可用的;

redis.testOnBorrow=true


添加redis的配置

<!-- redis config start -->

<!-- 配置JedisPoolConfig实例 -->

<bean id="poolConfig" class="redis.clients.jedis.JedisPoolConfig">

<property name="maxIdle" value="${redis.maxIdle}" />

<property name="maxTotal" value="${redis.maxActive}" />

<property name="maxWaitMillis" value="${redis.maxWait}" />

<property name="testOnBorrow" value="${redis.testOnBorrow}" />

</bean>


<!-- 配置JedisConnectionFactory -->

<bean id="jedisConnectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory">

<property name="hostName" value="${redis.host}"/>

<property name="port" value="${redis.port}"/>

<property name="password" value="${redis.pass}"/>

<property name="database" value="${redis.dbIndex}"/>

<property name="poolConfig" ref="poolConfig"/>

</bean>


<!-- 配置RedisTemplate -->

<bean id="redisTemplate" class="org.springframework.data.redis.core.RedisTemplate">

<property name="connectionFactory" ref="jedisConnectionFactory"/>

</bean>


<!-- 配置RedisCacheManager -->

<bean id="redisCacheManager" class="org.springframework.data.redis.cache.RedisCacheManager">

<constructor-arg name="redisOperations" ref="redisTemplate" />

<property name="defaultExpiration" value="${redis.expiration}"/>

</bean>


<!-- 配置RedisCacheConfig -->

<bean id="redisCacheConfig" class="com.fuwei.util.RedisCacheConfig">

<constructor-arg ref="jedisConnectionFactory" />

<constructor-arg ref="redisTemplate" />

<constructor-arg ref="redisCacheManager" />

</bean>


还有以Spring与配置文件来管理的redis缓存配置类

package com.fuwei.util;


import java.lang.reflect.Method;

import org.springframework.cache.CacheManager;

import org.springframework.cache.annotation.CachingConfigurerSupport;

import org.springframework.cache.annotation.EnableCaching;

import org.springframework.cache.interceptor.KeyGenerator;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.Configuration;

import org.springframework.data.redis.cache.RedisCacheManager;

import org.springframework.data.redis.connection.RedisConnectionFactory;

import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;

import org.springframework.data.redis.core.RedisTemplate;


/**

* 以Spring与配置文件来管理的redis缓存配置类

* @author liuyazhuang

*

*/

@Configuration

@EnableCaching

public class RedisCacheConfig extends CachingConfigurerSupport {


private volatile JedisConnectionFactory mJedisConnectionFactory;

private volatile RedisTemplate<String, String> mRedisTemplate;

private volatile RedisCacheManager mRedisCacheManager;


public RedisCacheConfig() {

super();

}


public RedisCacheConfig(JedisConnectionFactory mJedisConnectionFactory, RedisTemplate<String,String> mRedisTemplate,

RedisCacheManager mRedisCacheManager) {

super();

this.mJedisConnectionFactory = mJedisConnectionFactory;

this.mRedisTemplate = mRedisTemplate;

this.mRedisCacheManager = mRedisCacheManager;

}


public JedisConnectionFactory redisConnectionFactory() {

return mJedisConnectionFactory;

}


public RedisTemplate<String, String> redisTemplate(RedisConnectionFactory cf) {

return mRedisTemplate;

}


public CacheManager cacheManager(RedisTemplate<?, ?> redisTemplate) {

return mRedisCacheManager;

}


@Bean

public KeyGenerator customKeyGenerator() {

return new KeyGenerator() {

@Override

public Object generate(Object o, Method method, Object... objects) {

StringBuilder sb = new StringBuilder();

sb.append(o.getClass().getName());

sb.append(method.getName());

for (Object obj : objects) {

sb.append(obj.toString());

}

return sb.toString();

}

};

}

}

redis的安装和配置完成了


目前就是弄到这里,卡起了,项目的redis还没有跑通,感觉还是有点问题

(可能是对redis的不熟悉)


今天完成的事情:就是在Windows环境和linux的环境安装和配置redis缓存的机制,还有编写java的spring集成redis,看了很多的博客,流程是这个样子的,困难是对这个不熟悉,才接触,好多没有注意的小细节,自己也不好找问题,demo还没有跑通


今天遇到的困难:就是demo还没有跑通安装和配置都简单,就是不熟悉redis的spring配置,简单的java原生的配置简单,慢慢多查资料,把这个问题解决啦


明天的计划:完成redis的项目的跑起来

坚持

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值