spring cloud脚手架项目(七)redis和rocketmq接入

前言

上一篇讲到了工厂类和工厂类对应的使用。本篇则讲到了mq和redis的整合。在mysql负载不过来过多请求的时候,我们需要缓存,这时候就是redis登场的时候了。以及我们的请求需要削峰,降低请求压力。就需要mq,我们本地接入的是rocketmq
rocketmq和redis的docker安装可以考察我之前的代码
参考博客:
redis:https://www.cnblogs.com/L-Wirepuller/p/11150742.html
rocketmq:https://juejin.im/post/5d4639b15188255d691bccce

redis

yml

  # Redis服务器地址
redis:
  host: 127.0.0.1
  # Redis服务器连接端口
  port: 6379
  # Redis服务器连接密码(默认为空)
  password: password
  timeout: 30000
  # 连接池最大连接数(使用负值表示没有限制)
  maxTotal: 30
  # 连接池中的最大空闲连接
  maxIdle: 10
  numTestsPerEvictionRun: 1024
  timeBetweenEvictionRunsMillis: 30000
  minEvictableIdleTimeMillis: 1800000
  softMinEvictableIdleTimeMillis: 10000
  # 连接池最大阻塞等待时间(使用负值表示没有限制)
  maxWaitMillis: 1500
  testOnBorrow: true
  testWhileIdle: true
  blockWhenExhausted: false
  JmxEnabled: false

redisConfig

@Configuration
public class RedisConfig {

    @Value("${redis.host}")
    private String host;

    @Value("${redis.port}")
    private int port;

    @Value("${redis.password}")
    private String password;

    @Value("${redis.timeout}")
    private int timeout;

    @Value("${redis.maxIdle}")
    private int maxIdle;

    @Value("${redis.maxWaitMillis}")
    private int maxWaitMillis;

    @Value("${redis.blockWhenExhausted}")
    private Boolean blockWhenExhausted;

    @Value("${redis.JmxEnabled}")
    private Boolean JmxEnabled;

    @Bean
    public JedisPool jedisPoolFactory() {
        System.out.println("JedisPool注入开始...");
        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
        jedisPoolConfig.setMaxIdle(maxIdle);
        jedisPoolConfig.setMaxWaitMillis(maxWaitMillis);
        // 连接耗尽时是否阻塞, false报异常,true阻塞直到超时, 默认true
        jedisPoolConfig.setBlockWhenExhausted(blockWhenExhausted);
        // 是否启用pool的jmx管理功能, 默认true
        jedisPoolConfig.setJmxEnabled(JmxEnabled);
        JedisPool jedisPool = new JedisPool(jedisPoolConfig, host, port, timeout, password);
        System.out.println("JedisPool注入成功...");
        return jedisPool;
    }
}

使用方法就是创建JedisPool jedisPool类,调用jedis的api即可对redis进行相关的操作了

reocketmq

直接使用我首页的博文即可。本人也是照抄,对比了网上很多很多的spring boot接入rocketmq的文章,这篇无论是使用方法还是配置方法,都是比较简单易懂又考虑完善的。

pom文件

            <!-- redis -->
            <dependency>
                <groupId>redis.clients</groupId>
                <artifactId>jedis</artifactId>
                <version>2.9.0</version>
            </dependency>
            <!-- rocketmq -->
            <dependency>
                <groupId>org.apache.rocketmq</groupId>
                <artifactId>rocketmq-client</artifactId>
                <version>4.3.0</version>
            </dependency>

结尾

这样我们的项目就有个更多的选择,又有了redis做缓存,也有了mq的消息发送功能
github:https://github.com/alex9567/SpringCloudScaffold

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值