Skip to content

MessagePipeConfiguration

恒宇少年 edited this page Sep 9, 2020 · 9 revisions

MessagePipeConfiguration用于配置消息管道(MessagePipe)内部逻辑所需要一些的参数,每个消息管道(MessagePipe)都可以进行单独配置,也可以全局配置。

1. 分布式锁时间

消息管道(MessagePipe)内每次获取、写入消息(Message)时,都会调用Redisson提供的RLock分布式重入锁来实现消息处理的安全性、顺序性。

MessagePipeConfiguration.LockTime lockTime = new MessagePipeConfiguration.LockTime()
  .setWaitTime(5)
  .setLeaseTime(10)
  .setTimeUnit(TimeUnit.SECONDS);

1.1 等待获取锁时长

通过LockTime#waitTime字段进行配置每次拿出放入消息(Message)时获取分布式锁的等待时间,单位以LockTime#timeUnit为主,如果超时没有获取到锁,则会进入线程等待状态。

1.2 拥有锁的时长

通过LockTime#leaseTime字段进行配置线程获取锁后,持有的时长,单位以LockTime#timeUnit为主,如果线程处理消息完成后并且等待时间超过了持有时长,则会自动解锁。

1.3 锁相关时间单位

2. 异常处理器

3. 客户端负载均衡

4. 请求ID生成器

5. 监控执行间隔时间

6. 编解码器

Clone this wiki locally