Redis安裝部署應用【篇】

Linux安裝Redis

1、準備安裝包
Redis安裝部署應用【篇】

2、解壓安裝包
tar zxvf redis-5.0.5.tar.gz

Redis安裝部署應用【篇】

3、進入剛剛解壓的那個文件夾,輸入make命令
Redis安裝部署應用【篇】

4、等待上述過程完成後,輸入 make install命令

Redis安裝部署應用【篇】

5、在redis/src/文件夾下 運行 ./redis-server啓動Redis

Redis安裝部署應用【篇】

6、設置Redis後臺運行

Redis安裝部署應用【篇】

Redis安裝部署應用【篇】

7、修改完成後重新啓動。

Springboot 整合Redis

1、添加Redis相關依賴
咱們還是以之前搭建的Springboot項目爲基礎

                 <!-- Redis相關依賴 -->
                <dependency>
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-starter-data-redis</artifactId>
                </dependency>

2、application.properties中加入redis相關配置
參見《Spring Boot、Duboo、Zookeeper、redis的配置文件【怎麼用】》

# Redis數據庫索引(默認爲0)
spring.redis.database=0
# Redis服務器地址
spring.redis.host=192.168.0.24
# Redis服務器連接端口
spring.redis.port=6379
# Redis服務器連接密碼(默認爲空)
spring.redis.password=
# 連接池最大連接數(使用負值表示沒有限制)
spring.redis.pool.max-active=200
# 連接池最大阻塞等待時間(使用負值表示沒有限制)
spring.redis.pool.max-wait=-1
# 連接池中的最大空閒連接
spring.redis.pool.max-idle=10
# 連接池中的最小空閒連接
spring.redis.pool.min-idle=0
# 連接超時時間(毫秒)
spring.redis.timeout=1000 

Redis安裝部署應用【篇】

3、redis配置類

    package com.example.demo;

    import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
    import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
    import org.springframework.boot.context.properties.EnableConfigurationProperties;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.context.annotation.Import;
    import org.springframework.data.redis.connection.RedisConnectionFactory;
    import org.springframework.data.redis.core.RedisOperations;
    import org.springframework.data.redis.core.RedisTemplate;
    import org.springframework.data.redis.core.StringRedisTemplate;
    import org.springframework.data.redis.support.collections.RedisProperties;
    import java.net.UnknownHostException;
    /**FrozenConnection與RedAntctionConfiguration是俺隨便創建的倆個客戶端
    *
    /
    @Configuration
    @ConditionalOnClass(RedisOperations.class)
    @EnableConfigurationProperties(RedisProperties.class)
    @Import({FrozenConnection.class, RedAntctionConfiguration.class})
    public class RedisAutoConfiguration {
       /**@ConditionalOnMissingBean
 * 如果Spring容器中有了RedisTemplate對象了,
 * 這個自動配置的RedisTemplate不會實例化。
 * 因此我們可以直接自己寫個配置類,配置RedisTemplate。
 */
            @Bean
            @ConditionalOnMissingBean(name = "redisTemplate")
            public RedisTemplate<Object, Object> redisTemplate(
                            RedisConnectionFactory redisConnectionFactory) throws UnknownHostException {
                    RedisTemplate<Object, Object> template = new RedisTemplate<>();
                    template.setConnectionFactory(redisConnectionFactory);
                    return template;
            }

            @Bean
            @ConditionalOnMissingBean
            public StringRedisTemplate stringRedisTemplate(
                            RedisConnectionFactory redisConnectionFactory) throws UnknownHostException {
                    StringRedisTemplate template = new StringRedisTemplate();
                    template.setConnectionFactory(redisConnectionFactory);
                    return template;
            }

    }

package com.example.demo;

import io.lettuce.core.RedisClient;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.context.annotation.Configuration;

/**
 * SpringBoot默認使用的是lettuce
 */
@Configuration
@ConditionalOnClass(RedisClient.class)
public class FrozenConnection extends RedisAutoConfiguration{

}

package com.example.demo;

import org.apache.commons.pool.impl.GenericObjectPool;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.data.redis.RedisProperties;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.jedis.JedisConnection;

@Configuration
@ConditionalOnClass({ GenericObjectPool.class, JedisConnection.class, RedisProperties.Jedis.class })
public class RedAntctionConfiguration extends RedisAutoConfiguration{

}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章