记得上下班打卡 | git大法好,push需谨慎

Commit 98aa0eea authored by 胡佳晨's avatar 胡佳晨

修改 所有消费 自动绑定group

parent c032b792
package com.liquidnet.service.consumer.candy.config;
import com.liquidnet.common.cache.redis.config.RedisStreamConfig;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.consumer.candy.receiver.ConsumerCandyCouponBackRdsReceiver;
import lombok.var;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -11,55 +12,77 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
import static com.liquidnet.service.base.constant.MQConst.CandyQueue.COUPON_BACK;
@Configuration
public class ConsumerCandyCouponBackRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerCandyCouponBackRdsReceiver consumerCandyCouponBackRdsReceiver;
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveSqlCandyCouponBack(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(COUPON_BACK.getGroup(), getConsumerName(COUPON_BACK.name() + t)),
StreamOffset.create(COUPON_BACK.getKey(), ReadOffset.lastConsumed()), consumerCandyCouponBackRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Bean
public Subscription subscriptionSqlCandyCouponBack0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlCandyCouponBack(listenerContainer, 0);
listenerContainer.start();
return subscription;
}
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionSqlCandyCouponBack1(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlCandyCouponBack(listenerContainer, 1);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionCouponBack(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.CandyQueue stream = MQConst.CandyQueue.COUPON_BACK;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 3; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerCandyCouponBackRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
@Bean
public Subscription subscriptionSqlCandyCouponBack2(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlCandyCouponBack(listenerContainer, 2);
listenerContainer.start();
return subscription;
}
// /**
// * 缺票登记
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveSqlCandyCouponBack(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(COUPON_BACK.getGroup(), getConsumerName(COUPON_BACK.name() + t)),
// StreamOffset.create(COUPON_BACK.getKey(), ReadOffset.lastConsumed()), consumerCandyCouponBackRdsReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 缺票登记 */
//
// @Bean
// public Subscription subscriptionSqlCandyCouponBack0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlCandyCouponBack(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlCandyCouponBack1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlCandyCouponBack(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlCandyCouponBack2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlCandyCouponBack(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
/* -------------------------------------------------------- | */
}
package com.liquidnet.service.consumer.candy.config;
import com.liquidnet.common.cache.redis.config.RedisStreamConfig;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.consumer.candy.receiver.ConsumerCandyCouponOrderBackRdsReceiver;
import lombok.var;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -11,55 +12,77 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
import static com.liquidnet.service.base.constant.MQConst.CandyQueue.COUPON_ORDER_BACK;
@Configuration
public class ConsumerCandyCouponOrderBackRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerCandyCouponOrderBackRdsReceiver consumerCandyCouponOrderBackRdsReceiver;
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveSqlCandyCouponBack(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(COUPON_ORDER_BACK.getGroup(), getConsumerName(COUPON_ORDER_BACK.name() + t)),
StreamOffset.create(COUPON_ORDER_BACK.getKey(), ReadOffset.lastConsumed()), consumerCandyCouponOrderBackRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Bean
public Subscription subscriptionSqlCandyCouponOrderBack0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlCandyCouponBack(listenerContainer, 0);
listenerContainer.start();
return subscription;
}
@Bean
public Subscription subscriptionSqlCandyCouponOrderBack1(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlCandyCouponBack(listenerContainer, 1);
listenerContainer.start();
return subscription;
}
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionSqlCandyCouponOrderBack2(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlCandyCouponBack(listenerContainer, 2);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionCouponOrderBack(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.CandyQueue stream = MQConst.CandyQueue.COUPON_ORDER_BACK;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 3; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerCandyCouponOrderBackRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
/* -------------------------------------------------------- | */
// /**
// * 缺票登记
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveSqlCandyCouponBack(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(COUPON_ORDER_BACK.getGroup(), getConsumerName(COUPON_ORDER_BACK.name() + t)),
// StreamOffset.create(COUPON_ORDER_BACK.getKey(), ReadOffset.lastConsumed()), consumerCandyCouponOrderBackRdsReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 缺票登记 */
//
// @Bean
// public Subscription subscriptionSqlCandyCouponOrderBack0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlCandyCouponBack(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlCandyCouponOrderBack1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlCandyCouponBack(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlCandyCouponOrderBack2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlCandyCouponBack(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
//
// /* -------------------------------------------------------- | */
}
package com.liquidnet.service.consumer.candy.config;
import com.liquidnet.common.cache.redis.config.RedisStreamConfig;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.consumer.candy.receiver.ConsumerCandyCouponReceiveRdsReceiver;
import lombok.var;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -11,55 +12,78 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
import static com.liquidnet.service.base.constant.MQConst.CandyQueue.COUPON_RECEIVE;
@Configuration
public class ConsumerCandyCouponReceiveRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerCandyCouponReceiveRdsReceiver consumerCandyCouponReceiveRdsReceiver;
@Autowired
StringRedisTemplate stringRedisTemplate;
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveSqlCandyCouponReceive(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(COUPON_RECEIVE.getGroup(), getConsumerName(COUPON_RECEIVE.name() + t)),
StreamOffset.create(COUPON_RECEIVE.getKey(), ReadOffset.lastConsumed()), consumerCandyCouponReceiveRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Bean
public Subscription subscriptionSqlCandyCouponReceive0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlCandyCouponReceive(listenerContainer, 0);
listenerContainer.start();
return subscription;
}
@Bean
public Subscription subscriptionSqlCandyCouponReceive1(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlCandyCouponReceive(listenerContainer, 1);
listenerContainer.start();
return subscription;
}
@Bean
public Subscription subscriptionSqlCandyCouponReceive2(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlCandyCouponReceive(listenerContainer, 2);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionCouponReceive(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.CandyQueue stream = MQConst.CandyQueue.COUPON_RECEIVE;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 3; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerCandyCouponReceiveRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
/* -------------------------------------------------------- | */
// /**
// * 缺票登记
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveSqlCandyCouponReceive(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(COUPON_RECEIVE.getGroup(), getConsumerName(COUPON_RECEIVE.name() + t)),
// StreamOffset.create(COUPON_RECEIVE.getKey(), ReadOffset.lastConsumed()), consumerCandyCouponReceiveRdsReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 缺票登记 */
//
// @Bean
// public Subscription subscriptionSqlCandyCouponReceive0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlCandyCouponReceive(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlCandyCouponReceive1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlCandyCouponReceive(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlCandyCouponReceive2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlCandyCouponReceive(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
//
// /* -------------------------------------------------------- | */
}
package com.liquidnet.service.consumer.candy.config;
import com.liquidnet.common.cache.redis.config.RedisStreamConfig;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.consumer.candy.receiver.ConsumerCandyCouponUseRdsReceiver;
import lombok.var;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -11,56 +12,78 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
import static com.liquidnet.service.base.constant.MQConst.CandyQueue.COUPON_USE;
@Configuration
public class ConsumerCandyCouponUseRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerCandyCouponUseRdsReceiver consumerCandyCouponUseRdsReceiver;
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveSqlCandyCouponUse(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(COUPON_USE.getGroup(), getConsumerName(COUPON_USE.name() + t)),
StreamOffset.create(COUPON_USE.getKey(), ReadOffset.lastConsumed()), consumerCandyCouponUseRdsReceiver
);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Bean
public Subscription subscriptionSqlCandyCouponUse0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlCandyCouponUse(listenerContainer, 0);
listenerContainer.start();
return subscription;
}
@Bean
public Subscription subscriptionSqlCandyCouponUse1(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlCandyCouponUse(listenerContainer, 1);
listenerContainer.start();
return subscription;
}
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionSqlCandyCouponUse2(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlCandyCouponUse(listenerContainer, 2);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionCouponUse(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.CandyQueue stream = MQConst.CandyQueue.COUPON_USE;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 3; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerCandyCouponUseRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
/* -------------------------------------------------------- | */
// /**
// * 缺票登记
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveSqlCandyCouponUse(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(COUPON_USE.getGroup(), getConsumerName(COUPON_USE.name() + t)),
// StreamOffset.create(COUPON_USE.getKey(), ReadOffset.lastConsumed()), consumerCandyCouponUseRdsReceiver
// );
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 缺票登记 */
//
// @Bean
// public Subscription subscriptionSqlCandyCouponUse0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlCandyCouponUse(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlCandyCouponUse1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlCandyCouponUse(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlCandyCouponUse2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlCandyCouponUse(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
//
// /* -------------------------------------------------------- | */
}
......@@ -12,53 +12,75 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerGoblinOrderAGRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerGoblinOrderAGRdsReceiver consumerGoblinOrderAGRdsReceiver;
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveGoblinOrderAG(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.GoblinQueue.GOBLIN_ORDER_AGAIN.getGroup(), getConsumerName(MQConst.GoblinQueue.GOBLIN_ORDER_AGAIN.name() + t)),
StreamOffset.create(MQConst.GoblinQueue.GOBLIN_ORDER_AGAIN.getKey(), ReadOffset.lastConsumed()), consumerGoblinOrderAGRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Bean
public Subscription subscriptionGoblinOrderAG0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveGoblinOrderAG(listenerContainer, 0);
listenerContainer.start();
return subscription;
}
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionGoblinOrderAG1(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveGoblinOrderAG(listenerContainer, 1);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.GoblinQueue stream = MQConst.GoblinQueue.GOBLIN_ORDER_AGAIN;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 3; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerGoblinOrderAGRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
@Bean
public Subscription subscriptionGoblinOrderAG2(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveGoblinOrderAG(listenerContainer, 2);
listenerContainer.start();
return subscription;
}
// /**
// * 缺票登记
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveGoblinOrderAG(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.GoblinQueue.GOBLIN_ORDER_AGAIN.getGroup(), getConsumerName(MQConst.GoblinQueue.GOBLIN_ORDER_AGAIN.name() + t)),
// StreamOffset.create(MQConst.GoblinQueue.GOBLIN_ORDER_AGAIN.getKey(), ReadOffset.lastConsumed()), consumerGoblinOrderAGRdsReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 缺票登记 */
//
// @Bean
// public Subscription subscriptionGoblinOrderAG0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveGoblinOrderAG(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionGoblinOrderAG1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveGoblinOrderAG(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionGoblinOrderAG2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveGoblinOrderAG(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
/* -------------------------------------------------------- | */
}
......@@ -12,49 +12,71 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerGoblinOrderCPRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerGoblinOrderCPRdsReceiver consumerGoblinOrderCPRdsReceiver;
/**
* 商城订单
*/
private Subscription receiveGoblinOrderCP(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.GoblinQueue.GOBLIN_ORDER_CREATE_PAY.getGroup(), getConsumerName(MQConst.GoblinQueue.GOBLIN_ORDER_CREATE_PAY.name() + t)),
StreamOffset.create(MQConst.GoblinQueue.GOBLIN_ORDER_CREATE_PAY.getKey(), ReadOffset.lastConsumed()), consumerGoblinOrderCPRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/*-------------------------------------- 商城订单 --------------------------------------*/
@Bean
public Subscription subscriptionGoblinOrderCP0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveGoblinOrderCP(listenerContainer, 0);
listenerContainer.start();
return subscription;
}
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionGoblinOrderCP1(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveGoblinOrderCP(listenerContainer, 1);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.GoblinQueue stream = MQConst.GoblinQueue.GOBLIN_ORDER_CREATE_PAY;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 3; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerGoblinOrderCPRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
@Bean
public Subscription subscriptionGoblinOrderCP2(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveGoblinOrderCP(listenerContainer, 2);
listenerContainer.start();
return subscription;
}
// /**
// * 商城订单
// */
// private Subscription receiveGoblinOrderCP(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.GoblinQueue.GOBLIN_ORDER_CREATE_PAY.getGroup(), getConsumerName(MQConst.GoblinQueue.GOBLIN_ORDER_CREATE_PAY.name() + t)),
// StreamOffset.create(MQConst.GoblinQueue.GOBLIN_ORDER_CREATE_PAY.getKey(), ReadOffset.lastConsumed()), consumerGoblinOrderCPRdsReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /*-------------------------------------- 商城订单 --------------------------------------*/
//
// @Bean
// public Subscription subscriptionGoblinOrderCP0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveGoblinOrderCP(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionGoblinOrderCP1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveGoblinOrderCP(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionGoblinOrderCP2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveGoblinOrderCP(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
/* -------------------------------------------------------- | */
}
package com.liquidnet.service.consumer.kylin.config;
import com.liquidnet.common.cache.redis.config.RedisStreamConfig;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.consumer.kylin.receiver.ConsumerKylinSqlOrderPayRdsReceiver;
import lombok.var;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -11,111 +12,133 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
import static com.liquidnet.service.base.constant.MQConst.KylinQueue.SQL_ORDER_PAY;
@Configuration
public class ConsumerKylinSqlOrderPayRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerKylinSqlOrderPayRdsReceiver consumerKylinSqlOrderPayRdsReceiver;
@Autowired
StringRedisTemplate stringRedisTemplate;
/**
* 订单支付
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveSqlOrderPay(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(SQL_ORDER_PAY.getGroup(), getConsumerName(SQL_ORDER_PAY.name() + t)),
StreamOffset.create(SQL_ORDER_PAY.getKey(), ReadOffset.lastConsumed()), consumerKylinSqlOrderPayRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 订单支付 */
@Bean
public Subscription subscriptionSqlOrderPay0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlOrderPay(listenerContainer, 0);
listenerContainer.start();
return subscription;
}
@Bean
public Subscription subscriptionSqlOrderPay1(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlOrderPay(listenerContainer, 1);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.KylinQueue stream = MQConst.KylinQueue.SQL_ORDER_PAY;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 5; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerKylinSqlOrderPayRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
// /**
// * 订单支付
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveSqlOrderPay(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(SQL_ORDER_PAY.getGroup(), getConsumerName(SQL_ORDER_PAY.name() + t)),
// StreamOffset.create(SQL_ORDER_PAY.getKey(), ReadOffset.lastConsumed()), consumerKylinSqlOrderPayRdsReceiver);
// }
//
@Bean
public Subscription subscriptionSqlOrderPay2(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlOrderPay(listenerContainer, 2);
listenerContainer.start();
return subscription;
}
@Bean
public Subscription subscriptionSqlOrderPay3(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlOrderPay(listenerContainer, 3);
listenerContainer.start();
return subscription;
}
@Bean
public Subscription subscriptionSqlOrderPay4(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlOrderPay(listenerContainer, 4);
listenerContainer.start();
return subscription;
}
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 订单支付 */
//
// @Bean
// public Subscription subscriptionSqlOrderPay5(RedisConnectionFactory factory) {
// public Subscription subscriptionSqlOrderPay0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlOrderPay(listenerContainer, 5);
// var subscription = receiveSqlOrderPay(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlOrderPay6(RedisConnectionFactory factory) {
// public Subscription subscriptionSqlOrderPay1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlOrderPay(listenerContainer, 6);
// var subscription = receiveSqlOrderPay(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// }
//
////
// @Bean
// public Subscription subscriptionSqlOrderPay7(RedisConnectionFactory factory) {
// public Subscription subscriptionSqlOrderPay2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlOrderPay(listenerContainer, 7);
// var subscription = receiveSqlOrderPay(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlOrderPay8(RedisConnectionFactory factory) {
// public Subscription subscriptionSqlOrderPay3(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlOrderPay(listenerContainer, 8);
// var subscription = receiveSqlOrderPay(listenerContainer, 3);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlOrderPay9(RedisConnectionFactory factory) {
// public Subscription subscriptionSqlOrderPay4(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlOrderPay(listenerContainer, 9);
// var subscription = receiveSqlOrderPay(listenerContainer, 4);
// listenerContainer.start();
// return subscription;
// }
/* -------------------------------------------------------- | */
////
//// @Bean
//// public Subscription subscriptionSqlOrderPay5(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlOrderPay(listenerContainer, 5);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSqlOrderPay6(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlOrderPay(listenerContainer, 6);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSqlOrderPay7(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlOrderPay(listenerContainer, 7);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSqlOrderPay8(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlOrderPay(listenerContainer, 8);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSqlOrderPay9(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlOrderPay(listenerContainer, 9);
//// listenerContainer.start();
//// return subscription;
//// }
//
// /* -------------------------------------------------------- | */
}
package com.liquidnet.service.consumer.kylin.config;
import com.liquidnet.common.cache.redis.config.RedisStreamConfig;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.consumer.kylin.receiver.ConsumerKylinSqlOrderRefundRdsReceiver;
import lombok.var;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -11,71 +12,93 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
import static com.liquidnet.service.base.constant.MQConst.KylinQueue.SQL_ORDER_REFUND;
@Configuration
public class ConsumerKylinSqlOrderRefundRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerKylinSqlOrderRefundRdsReceiver consumerKylinSqlOrderRefundRdsReceiver;
@Autowired
StringRedisTemplate stringRedisTemplate;
/**
* 订单申请退款
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveSqlOrderRefund(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(SQL_ORDER_REFUND.getGroup(), getConsumerName(SQL_ORDER_REFUND.name() + t)),
StreamOffset.create(SQL_ORDER_REFUND.getKey(), ReadOffset.lastConsumed()), consumerKylinSqlOrderRefundRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 订单申请退款 */
@Bean
public Subscription subscriptionSqlOrderRefund0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlOrderRefund(listenerContainer, 0);
listenerContainer.start();
return subscription;
}
@Bean
public Subscription subscriptionSqlOrderRefund1(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlOrderRefund(listenerContainer, 1);
listenerContainer.start();
return subscription;
}
@Bean
public Subscription subscriptionSqlOrderRefund2(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlOrderRefund(listenerContainer, 2);
listenerContainer.start();
return subscription;
}
@Bean
public Subscription subscriptionSqlOrderRefund3(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlOrderRefund(listenerContainer, 3);
listenerContainer.start();
return subscription;
}
@Bean
public Subscription subscriptionSqlOrderRefund4(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlOrderRefund(listenerContainer, 4);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.KylinQueue stream = MQConst.KylinQueue.SQL_ORDER_REFUND;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 5; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerKylinSqlOrderRefundRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
/* -------------------------------------------------------- | */
// /**
// * 订单申请退款
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveSqlOrderRefund(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(SQL_ORDER_REFUND.getGroup(), getConsumerName(SQL_ORDER_REFUND.name() + t)),
// StreamOffset.create(SQL_ORDER_REFUND.getKey(), ReadOffset.lastConsumed()), consumerKylinSqlOrderRefundRdsReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 订单申请退款 */
//
// @Bean
// public Subscription subscriptionSqlOrderRefund0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlOrderRefund(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlOrderRefund1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlOrderRefund(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlOrderRefund2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlOrderRefund(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlOrderRefund3(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlOrderRefund(listenerContainer, 3);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlOrderRefund4(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlOrderRefund(listenerContainer, 4);
// listenerContainer.start();
// return subscription;
// }
//
// /* -------------------------------------------------------- | */
}
......@@ -12,53 +12,74 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerGoblinSelfMarketRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerGoblinSelfMarketRdsReceiver consumerGoblinSelfMarketRdsReceiver;
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveGoblinSelfMarket(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.GoblinQueue.GOBLIN_SELF_MARKET.getGroup(), getConsumerName(MQConst.GoblinQueue.GOBLIN_SELF_MARKET.name() + t)),
StreamOffset.create(MQConst.GoblinQueue.GOBLIN_SELF_MARKET.getKey(), ReadOffset.lastConsumed()), consumerGoblinSelfMarketRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionGoblinSelfMarket0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveGoblinSelfMarket(listenerContainer, 0);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.GoblinQueue stream = MQConst.GoblinQueue.GOBLIN_SELF_MARKET;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 1; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerGoblinSelfMarketRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
// @Bean
// public Subscription subscriptionGoblinSelfMarket1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveGoblinSelfMarket(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// /**
// * 缺票登记
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveGoblinSelfMarket(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.GoblinQueue.GOBLIN_SELF_MARKET.getGroup(), getConsumerName(MQConst.GoblinQueue.GOBLIN_SELF_MARKET.name() + t)),
// StreamOffset.create(MQConst.GoblinQueue.GOBLIN_SELF_MARKET.getKey(), ReadOffset.lastConsumed()), consumerGoblinSelfMarketRdsReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 缺票登记 */
//
// @Bean
// public Subscription subscriptionGoblinSelfMarket2(RedisConnectionFactory factory) {
// public Subscription subscriptionGoblinSelfMarket0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveGoblinSelfMarket(listenerContainer, 2);
// var subscription = receiveGoblinSelfMarket(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
/* -------------------------------------------------------- | */
//
//// @Bean
//// public Subscription subscriptionGoblinSelfMarket1(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveGoblinSelfMarket(listenerContainer, 1);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionGoblinSelfMarket2(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveGoblinSelfMarket(listenerContainer, 2);
//// listenerContainer.start();
//// return subscription;
//// }
//
// /* -------------------------------------------------------- | */
}
......@@ -12,64 +12,86 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerGoblinShopCartStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerGoblinShopCartReceiver consumerGoblinShopCartReceiver;
/**
* 购物车
* @return Subscription
*/
private Subscription receiveSqlShopCart(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.GoblinQueue.GOBLIN_SHOP_CART.getGroup(), getConsumerName(MQConst.GoblinQueue.GOBLIN_SHOP_CART.name() + t)),
StreamOffset.create(MQConst.GoblinQueue.GOBLIN_SHOP_CART.getKey(), ReadOffset.lastConsumed()), consumerGoblinShopCartReceiver);
}
/* -------------------------------------------------------- | */
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionSqlShopCart0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlShopCart(listenerContainer, 0);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.GoblinQueue stream = MQConst.GoblinQueue.GOBLIN_SHOP_CART;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 1; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerGoblinShopCartReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
// @Bean
// public Subscription subscriptionSqlShopCart1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlShopCart(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// /**
// * 购物车
// * @return Subscription
// */
// private Subscription receiveSqlShopCart(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.GoblinQueue.GOBLIN_SHOP_CART.getGroup(), getConsumerName(MQConst.GoblinQueue.GOBLIN_SHOP_CART.name() + t)),
// StreamOffset.create(MQConst.GoblinQueue.GOBLIN_SHOP_CART.getKey(), ReadOffset.lastConsumed()), consumerGoblinShopCartReceiver);
// }
//
// @Bean
// public Subscription subscriptionSqlShopCart2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlShopCart(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
// /* -------------------------------------------------------- | */
//
// @Bean
// public Subscription subscriptionSqlShopCart3(RedisConnectionFactory factory) {
// public Subscription subscriptionSqlShopCart0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlShopCart(listenerContainer, 3);
// var subscription = receiveSqlShopCart(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlShopCart4(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlShopCart(listenerContainer, 4);
// listenerContainer.start();
// return subscription;
// }
//// @Bean
//// public Subscription subscriptionSqlShopCart1(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlShopCart(listenerContainer, 1);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSqlShopCart2(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlShopCart(listenerContainer, 2);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSqlShopCart3(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlShopCart(listenerContainer, 3);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSqlShopCart4(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlShopCart(listenerContainer, 4);
//// listenerContainer.start();
//// return subscription;
//// }
/* -------------------------------------------------------- | */
......
......@@ -12,53 +12,75 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerGoblinStoneMarketRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerGoblinStoreMarketRdsReceiver consumerGoblinStoreMarketRdsReceiver;
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveGoblinStoreMarket(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.GoblinQueue.GOBLIN_STORE_MARKET.getGroup(), getConsumerName(MQConst.GoblinQueue.GOBLIN_STORE_MARKET.name() + t)),
StreamOffset.create(MQConst.GoblinQueue.GOBLIN_STORE_MARKET.getKey(), ReadOffset.lastConsumed()), consumerGoblinStoreMarketRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionGoblinStoreMarket0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveGoblinStoreMarket(listenerContainer, 0);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.GoblinQueue stream = MQConst.GoblinQueue.GOBLIN_STORE_MARKET;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 1; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerGoblinStoreMarketRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
// @Bean
// public Subscription subscriptionGoblinStoreMarket1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveGoblinStoreMarket(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// /**
// * 缺票登记
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveGoblinStoreMarket(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.GoblinQueue.GOBLIN_STORE_MARKET.getGroup(), getConsumerName(MQConst.GoblinQueue.GOBLIN_STORE_MARKET.name() + t)),
// StreamOffset.create(MQConst.GoblinQueue.GOBLIN_STORE_MARKET.getKey(), ReadOffset.lastConsumed()), consumerGoblinStoreMarketRdsReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 缺票登记 */
//
// @Bean
// public Subscription subscriptionGoblinStoreMarket2(RedisConnectionFactory factory) {
// public Subscription subscriptionGoblinStoreMarket0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveGoblinStoreMarket(listenerContainer, 2);
// var subscription = receiveGoblinStoreMarket(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
//// @Bean
//// public Subscription subscriptionGoblinStoreMarket1(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveGoblinStoreMarket(listenerContainer, 1);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionGoblinStoreMarket2(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveGoblinStoreMarket(listenerContainer, 2);
//// listenerContainer.start();
//// return subscription;
//// }
/* -------------------------------------------------------- | */
}
......@@ -12,53 +12,74 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerGoblinStoreOrderRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerGoblinStoreOrderRdsReceiver consumerGoblinStoreOrderRdsReceiver;
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveGoblinStoreOrder(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.GoblinQueue.GOBLIN_STORE_ORDER_OPERA.getGroup(), getConsumerName(MQConst.GoblinQueue.GOBLIN_STORE_ORDER_OPERA.name() + t)),
StreamOffset.create(MQConst.GoblinQueue.GOBLIN_STORE_ORDER_OPERA.getKey(), ReadOffset.lastConsumed()), consumerGoblinStoreOrderRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionGoblinStoreOrder0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveGoblinStoreOrder(listenerContainer, 0);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.GoblinQueue stream = MQConst.GoblinQueue.GOBLIN_STORE_ORDER_OPERA;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 1; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerGoblinStoreOrderRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
// @Bean
// public Subscription subscriptionGoblinStoreOrder1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveGoblinStoreOrder(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// /**
// * 缺票登记
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveGoblinStoreOrder(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.GoblinQueue.GOBLIN_STORE_ORDER_OPERA.getGroup(), getConsumerName(MQConst.GoblinQueue.GOBLIN_STORE_ORDER_OPERA.name() + t)),
// StreamOffset.create(MQConst.GoblinQueue.GOBLIN_STORE_ORDER_OPERA.getKey(), ReadOffset.lastConsumed()), consumerGoblinStoreOrderRdsReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 缺票登记 */
//
// @Bean
// public Subscription subscriptionGoblinStoreOrder2(RedisConnectionFactory factory) {
// public Subscription subscriptionGoblinStoreOrder0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveGoblinStoreOrder(listenerContainer, 2);
// var subscription = receiveGoblinStoreOrder(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
//// @Bean
//// public Subscription subscriptionGoblinStoreOrder1(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveGoblinStoreOrder(listenerContainer, 1);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionGoblinStoreOrder2(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveGoblinStoreOrder(listenerContainer, 2);
//// listenerContainer.start();
//// return subscription;
//// }
/* -------------------------------------------------------- | */
}
......@@ -12,53 +12,75 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerGoblinUserOrderRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerGoblinUserOrderRdsReceiver consumerGoblinUserOrderRdsReceiver;
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveGoblinUserOrder(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.GoblinQueue.GOBLIN_USER_ORDER_OPERA.getGroup(), getConsumerName(MQConst.GoblinQueue.GOBLIN_USER_ORDER_OPERA.name() + t)),
StreamOffset.create(MQConst.GoblinQueue.GOBLIN_USER_ORDER_OPERA.getKey(), ReadOffset.lastConsumed()), consumerGoblinUserOrderRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionGoblinUserOrder0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveGoblinUserOrder(listenerContainer, 0);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.GoblinQueue stream = MQConst.GoblinQueue.GOBLIN_USER_ORDER_OPERA;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 1; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerGoblinUserOrderRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
// @Bean
// public Subscription subscriptionGoblinUserOrder1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveGoblinUserOrder(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// /**
// * 缺票登记
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveGoblinUserOrder(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.GoblinQueue.GOBLIN_USER_ORDER_OPERA.getGroup(), getConsumerName(MQConst.GoblinQueue.GOBLIN_USER_ORDER_OPERA.name() + t)),
// StreamOffset.create(MQConst.GoblinQueue.GOBLIN_USER_ORDER_OPERA.getKey(), ReadOffset.lastConsumed()), consumerGoblinUserOrderRdsReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 缺票登记 */
//
// @Bean
// public Subscription subscriptionGoblinUserOrder2(RedisConnectionFactory factory) {
// public Subscription subscriptionGoblinUserOrder0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveGoblinUserOrder(listenerContainer, 2);
// var subscription = receiveGoblinUserOrder(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
//// @Bean
//// public Subscription subscriptionGoblinUserOrder1(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveGoblinUserOrder(listenerContainer, 1);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionGoblinUserOrder2(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveGoblinUserOrder(listenerContainer, 2);
//// listenerContainer.start();
//// return subscription;
//// }
/* -------------------------------------------------------- | */
}
......@@ -12,53 +12,75 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerGoblinXlsRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerGoblinXlsRdsReceiver consumerGoblinXlsRdsReceiver;
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveGoblinXls(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.GoblinQueue.GOBLIN_XLS_OPERA.getGroup(), getConsumerName(MQConst.GoblinQueue.GOBLIN_XLS_OPERA.name() + t)),
StreamOffset.create(MQConst.GoblinQueue.GOBLIN_XLS_OPERA.getKey(), ReadOffset.lastConsumed()), consumerGoblinXlsRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionGoblinXls0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveGoblinXls(listenerContainer, 0);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.GoblinQueue stream = MQConst.GoblinQueue.GOBLIN_XLS_OPERA;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 2; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerGoblinXlsRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
@Bean
public Subscription subscriptionGoblinXls1(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveGoblinXls(listenerContainer, 1);
listenerContainer.start();
return subscription;
}
// /**
// * 缺票登记
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveGoblinXls(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.GoblinQueue.GOBLIN_XLS_OPERA.getGroup(), getConsumerName(MQConst.GoblinQueue.GOBLIN_XLS_OPERA.name() + t)),
// StreamOffset.create(MQConst.GoblinQueue.GOBLIN_XLS_OPERA.getKey(), ReadOffset.lastConsumed()), consumerGoblinXlsRdsReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 缺票登记 */
//
// @Bean
// public Subscription subscriptionGoblinXls2(RedisConnectionFactory factory) {
// public Subscription subscriptionGoblinXls0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveGoblinXls(listenerContainer, 2);
// var subscription = receiveGoblinXls(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
/* -------------------------------------------------------- | */
//
// @Bean
// public Subscription subscriptionGoblinXls1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveGoblinXls(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// }
////
//// @Bean
//// public Subscription subscriptionGoblinXls2(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveGoblinXls(listenerContainer, 2);
//// listenerContainer.start();
//// return subscription;
//// }
//
// /* -------------------------------------------------------- | */
}
package com.liquidnet.service.consumer.slowly.config;
import com.liquidnet.common.cache.redis.config.RedisStreamConfig;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.consumer.slowly.receiver.ConsumerKylinTransferOverTimeRdsReceiver;
import lombok.var;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -11,71 +12,93 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
import static com.liquidnet.service.base.constant.MQConst.KylinQueue.SQL_TRANSFER_OVERTIME;
@Configuration
public class ConsumerKylinOptTransferOverTimeRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerKylinTransferOverTimeRdsReceiver consumerKylinTransferOverTimeRdsReceiver;
/**
* 验票更新
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveTransferOverTimeResult(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(SQL_TRANSFER_OVERTIME.getGroup(), getConsumerName(SQL_TRANSFER_OVERTIME.name() + t)),
StreamOffset.create(SQL_TRANSFER_OVERTIME.getKey(), ReadOffset.lastConsumed()), consumerKylinTransferOverTimeRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 验票更新 */
@Bean
public Subscription subscriptionReceiveTransferOverTime0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveTransferOverTimeResult(listenerContainer, 0);
listenerContainer.start();
return subscription;
}
@Bean
public Subscription subscriptionReceiveTransferOverTime1(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveTransferOverTimeResult(listenerContainer, 1);
listenerContainer.start();
return subscription;
}
@Bean
public Subscription subscriptionReceiveTransferOverTime2(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveTransferOverTimeResult(listenerContainer, 2);
listenerContainer.start();
return subscription;
}
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionReceiveTransferOverTime3(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveTransferOverTimeResult(listenerContainer, 3);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.KylinQueue stream = SQL_TRANSFER_OVERTIME;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 5; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerKylinTransferOverTimeRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
@Bean
public Subscription subscriptionReceiveTransferOverTime4(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveTransferOverTimeResult(listenerContainer, 4);
listenerContainer.start();
return subscription;
}
// /**
// * 验票更新
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveTransferOverTimeResult(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(SQL_TRANSFER_OVERTIME.getGroup(), getConsumerName(SQL_TRANSFER_OVERTIME.name() + t)),
// StreamOffset.create(SQL_TRANSFER_OVERTIME.getKey(), ReadOffset.lastConsumed()), consumerKylinTransferOverTimeRdsReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 验票更新 */
//
// @Bean
// public Subscription subscriptionReceiveTransferOverTime0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferOverTimeResult(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionReceiveTransferOverTime1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferOverTimeResult(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionReceiveTransferOverTime2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferOverTimeResult(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionReceiveTransferOverTime3(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferOverTimeResult(listenerContainer, 3);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionReceiveTransferOverTime4(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferOverTimeResult(listenerContainer, 4);
// listenerContainer.start();
// return subscription;
// }
/* -------------------------------------------------------- | */
}
package com.liquidnet.service.consumer.slowly.config;
import com.liquidnet.common.cache.redis.config.RedisStreamConfig;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.consumer.slowly.receiver.ConsumerKylinOrderRefundExpressRdsReceiver;
import lombok.var;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -11,53 +12,75 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
import static com.liquidnet.service.base.constant.MQConst.KylinQueue.SQL_ORDER_REFUND_EXPRESS;
@Configuration
public class ConsumerKylinOrderRefundExpressRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerKylinOrderRefundExpressRdsReceiver consumerKylinOrderRefundExpressRdsReceiver;
/**
* 用户退款发快递
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveSqlOrderRefundExpress(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(SQL_ORDER_REFUND_EXPRESS.getGroup(), getConsumerName(SQL_ORDER_REFUND_EXPRESS.name() + t)),
StreamOffset.create(SQL_ORDER_REFUND_EXPRESS.getKey(), ReadOffset.lastConsumed()), consumerKylinOrderRefundExpressRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
@Bean
public Subscription subscriptionOrderRefundExpress0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlOrderRefundExpress(listenerContainer, 0);
listenerContainer.start();
return subscription;
}
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionOrderRefundExpress1(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlOrderRefundExpress(listenerContainer, 1);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.KylinQueue stream = SQL_ORDER_REFUND_EXPRESS;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 3; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerKylinOrderRefundExpressRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
@Bean
public Subscription subscriptionOrderRefundExpress2(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlOrderRefundExpress(listenerContainer, 2);
listenerContainer.start();
return subscription;
}
// /**
// * 用户退款发快递
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveSqlOrderRefundExpress(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(SQL_ORDER_REFUND_EXPRESS.getGroup(), getConsumerName(SQL_ORDER_REFUND_EXPRESS.name() + t)),
// StreamOffset.create(SQL_ORDER_REFUND_EXPRESS.getKey(), ReadOffset.lastConsumed()), consumerKylinOrderRefundExpressRdsReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// @Bean
// public Subscription subscriptionOrderRefundExpress0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlOrderRefundExpress(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionOrderRefundExpress1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlOrderRefundExpress(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionOrderRefundExpress2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlOrderRefundExpress(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
/* -------------------------------------------------------- | */
}
\ No newline at end of file
......@@ -12,109 +12,131 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerKylinSmsSenderRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerKylinSmsNoticeRdsReceiver consumerKylinSmsNoticeRdsReceiver;
/**
* 短信通知
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveSqlURegister(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.AdamQueue.SMS_NOTICE.getGroup(), getConsumerName(MQConst.AdamQueue.SMS_NOTICE.name() + t)),
StreamOffset.create(MQConst.AdamQueue.SMS_NOTICE.getKey(), ReadOffset.lastConsumed()), consumerKylinSmsNoticeRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 短信通知 */
@Bean
public Subscription subscriptionSmsNotice0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlURegister(listenerContainer, 0);
listenerContainer.start();
return subscription;
}
@Bean
public Subscription subscriptionSmsNotice1(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlURegister(listenerContainer, 1);
listenerContainer.start();
return subscription;
}
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionSmsNotice2(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlURegister(listenerContainer, 2);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.AdamQueue stream = MQConst.AdamQueue.SMS_NOTICE;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 3; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerKylinSmsNoticeRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
// @Bean
// public Subscription subscriptionSmsNotice3(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlURegister(listenerContainer, 3);
// listenerContainer.start();
// return subscription;
// /**
// * 短信通知
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveSqlURegister(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.AdamQueue.SMS_NOTICE.getGroup(), getConsumerName(MQConst.AdamQueue.SMS_NOTICE.name() + t)),
// StreamOffset.create(MQConst.AdamQueue.SMS_NOTICE.getKey(), ReadOffset.lastConsumed()), consumerKylinSmsNoticeRdsReceiver);
// }
//
// @Bean
// public Subscription subscriptionSmsNotice4(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlURegister(listenerContainer, 4);
// listenerContainer.start();
// return subscription;
// }
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// @Bean
// public Subscription subscriptionSmsNotice5(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlURegister(listenerContainer, 5);
// listenerContainer.start();
// return subscription;
// }
// /* -------------------------------------------------------- | 短信通知 */
//
// @Bean
// public Subscription subscriptionSmsNotice6(RedisConnectionFactory factory) {
// public Subscription subscriptionSmsNotice0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlURegister(listenerContainer, 6);
// var subscription = receiveSqlURegister(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSmsNotice7(RedisConnectionFactory factory) {
// public Subscription subscriptionSmsNotice1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlURegister(listenerContainer, 7);
// var subscription = receiveSqlURegister(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSmsNotice8(RedisConnectionFactory factory) {
// public Subscription subscriptionSmsNotice2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlURegister(listenerContainer, 8);
// var subscription = receiveSqlURegister(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSmsNotice9(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlURegister(listenerContainer, 9);
// listenerContainer.start();
// return subscription;
// }
//// @Bean
//// public Subscription subscriptionSmsNotice3(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlURegister(listenerContainer, 3);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSmsNotice4(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlURegister(listenerContainer, 4);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSmsNotice5(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlURegister(listenerContainer, 5);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSmsNotice6(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlURegister(listenerContainer, 6);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSmsNotice7(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlURegister(listenerContainer, 7);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSmsNotice8(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlURegister(listenerContainer, 8);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSmsNotice9(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlURegister(listenerContainer, 9);
//// listenerContainer.start();
//// return subscription;
//// }
/* -------------------------------------------------------- | */
}
package com.liquidnet.service.consumer.slowly.config;
import com.liquidnet.common.cache.redis.config.RedisStreamConfig;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.consumer.slowly.receiver.ConsumerKylinSqlOrderWithdrawRdsReceiver;
import lombok.var;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -11,71 +12,93 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
import static com.liquidnet.service.base.constant.MQConst.KylinQueue.SQL_ORDER_WITHDRAW;
@Configuration
public class ConsumerKylinSqlOrderWithdrawRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerKylinSqlOrderWithdrawRdsReceiver consumerKylinSqlOrderWithdrawRdsReceiver;
/**
* 订单申请撤回
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveSqlOrderWithdraw(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(SQL_ORDER_WITHDRAW.getGroup(), getConsumerName(SQL_ORDER_WITHDRAW.name() + t)),
StreamOffset.create(SQL_ORDER_WITHDRAW.getKey(), ReadOffset.lastConsumed()), consumerKylinSqlOrderWithdrawRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 订单申请撤回 */
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionSqlOrderWithdraw0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlOrderWithdraw(listenerContainer, 0);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.KylinQueue stream = SQL_ORDER_WITHDRAW;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 1; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerKylinSqlOrderWithdrawRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
// @Bean
// public Subscription subscriptionSqlOrderWithdraw1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlOrderWithdraw(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// /**
// * 订单申请撤回
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveSqlOrderWithdraw(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(SQL_ORDER_WITHDRAW.getGroup(), getConsumerName(SQL_ORDER_WITHDRAW.name() + t)),
// StreamOffset.create(SQL_ORDER_WITHDRAW.getKey(), ReadOffset.lastConsumed()), consumerKylinSqlOrderWithdrawRdsReceiver);
// }
//
// @Bean
// public Subscription subscriptionSqlOrderWithdraw2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlOrderWithdraw(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
// @Bean
// public Subscription subscriptionSqlOrderWithdraw3(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlOrderWithdraw(listenerContainer, 3);
// listenerContainer.start();
// return subscription;
// }
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 订单申请撤回 */
//
// @Bean
// public Subscription subscriptionSqlOrderWithdraw4(RedisConnectionFactory factory) {
// public Subscription subscriptionSqlOrderWithdraw0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlOrderWithdraw(listenerContainer, 4);
// var subscription = receiveSqlOrderWithdraw(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
//// @Bean
//// public Subscription subscriptionSqlOrderWithdraw1(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlOrderWithdraw(listenerContainer, 1);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSqlOrderWithdraw2(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlOrderWithdraw(listenerContainer, 2);
//// listenerContainer.start();
//// return subscription;
//// }
//
//// @Bean
//// public Subscription subscriptionSqlOrderWithdraw3(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlOrderWithdraw(listenerContainer, 3);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSqlOrderWithdraw4(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlOrderWithdraw(listenerContainer, 4);
//// listenerContainer.start();
//// return subscription;
//// }
/* -------------------------------------------------------- | */
}
package com.liquidnet.service.consumer.slowly.config;
import com.liquidnet.common.cache.redis.config.RedisStreamConfig;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.consumer.slowly.receiver.ConsumerKylinSqlPerformanceLackRdsReceiver;
import lombok.var;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -11,39 +12,61 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
import static com.liquidnet.service.base.constant.MQConst.KylinQueue.SQL_PERFORMANCE_LACK;
@Configuration
public class ConsumerKylinSqlPerformanceLackRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerKylinSqlPerformanceLackRdsReceiver consumerKylinSqlPerformanceLackRdsReceiver;
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveSqlPerformanceLack(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(SQL_PERFORMANCE_LACK.getGroup(), getConsumerName(SQL_PERFORMANCE_LACK.name() + t)),
StreamOffset.create(SQL_PERFORMANCE_LACK.getKey(), ReadOffset.lastConsumed()), consumerKylinSqlPerformanceLackRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionSqlPerformanceLack0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlPerformanceLack(listenerContainer, 0);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.KylinQueue stream = SQL_PERFORMANCE_LACK;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 1; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerKylinSqlPerformanceLackRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
// /**
// * 缺票登记
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveSqlPerformanceLack(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(SQL_PERFORMANCE_LACK.getGroup(), getConsumerName(SQL_PERFORMANCE_LACK.name() + t)),
// StreamOffset.create(SQL_PERFORMANCE_LACK.getKey(), ReadOffset.lastConsumed()), consumerKylinSqlPerformanceLackRdsReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 缺票登记 */
//
// @Bean
// public Subscription subscriptionSqlPerformanceLack0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlPerformanceLack(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
/* -------------------------------------------------------- | */
}
package com.liquidnet.service.consumer.slowly.config;
import com.liquidnet.common.cache.redis.config.RedisStreamConfig;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.consumer.slowly.receiver.ConsumerKylinSqlStationRdsReceiver;
import lombok.var;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -11,9 +12,13 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
import static com.liquidnet.service.base.constant.MQConst.KylinQueue.SQL_STATION;
@Configuration
......@@ -21,61 +26,81 @@ public class ConsumerKylinSqlStationRedisStreamConfig extends RedisStreamConfig
@Autowired
ConsumerKylinSqlStationRdsReceiver consumerKylinSqlStationRdsReceiver;
/**
* 验票更新
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveSqlStation(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(SQL_STATION.getGroup(), getConsumerName(SQL_STATION.name() + t)),
StreamOffset.create(SQL_STATION.getKey(), ReadOffset.lastConsumed()), consumerKylinSqlStationRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 验票更新 */
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionSqlStation0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlStation(listenerContainer, 0);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.KylinQueue stream = SQL_STATION;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 1; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerKylinSqlStationRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
// @Bean
// public Subscription subscriptionSqlStation1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlStation(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// /**
// * 验票更新
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveSqlStation(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(SQL_STATION.getGroup(), getConsumerName(SQL_STATION.name() + t)),
// StreamOffset.create(SQL_STATION.getKey(), ReadOffset.lastConsumed()), consumerKylinSqlStationRdsReceiver);
// }
//
// @Bean
// public Subscription subscriptionSqlStation2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlStation(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// @Bean
// public Subscription subscriptionSqlStation3(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlStation(listenerContainer, 3);
// listenerContainer.start();
// return subscription;
// }
// /* -------------------------------------------------------- | 验票更新 */
//
// @Bean
// public Subscription subscriptionSqlStation4(RedisConnectionFactory factory) {
// public Subscription subscriptionSqlStation0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlStation(listenerContainer, 4);
// var subscription = receiveSqlStation(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
//// @Bean
//// public Subscription subscriptionSqlStation1(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlStation(listenerContainer, 1);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSqlStation2(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlStation(listenerContainer, 2);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSqlStation3(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlStation(listenerContainer, 3);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionSqlStation4(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlStation(listenerContainer, 4);
//// listenerContainer.start();
//// return subscription;
//// }
/* -------------------------------------------------------- | */
}
package com.liquidnet.service.consumer.slowly.config;
import com.liquidnet.common.cache.redis.config.RedisStreamConfig;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.consumer.slowly.receiver.ConsumerKylinTransferRdsReceiver;
import lombok.var;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -11,71 +12,93 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
import static com.liquidnet.service.base.constant.MQConst.KylinQueue.SQL_TRANSFER;
@Configuration
public class ConsumerKylinSqlTransferRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerKylinTransferRdsReceiver consumerKylinTransferRdsReceiver;
/**
* 验票更新
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveTransfer(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(SQL_TRANSFER.getGroup(), getConsumerName(SQL_TRANSFER.name() + t)),
StreamOffset.create(SQL_TRANSFER.getKey(), ReadOffset.lastConsumed()), consumerKylinTransferRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 验票更新 */
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionReceiveTransfer0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveTransfer(listenerContainer, 0);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.KylinQueue stream = SQL_TRANSFER;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 1; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerKylinTransferRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
// @Bean
// public Subscription subscriptionReceiveTransfer1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransfer(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// /**
// * 验票更新
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveTransfer(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(SQL_TRANSFER.getGroup(), getConsumerName(SQL_TRANSFER.name() + t)),
// StreamOffset.create(SQL_TRANSFER.getKey(), ReadOffset.lastConsumed()), consumerKylinTransferRdsReceiver);
// }
//
// @Bean
// public Subscription subscriptionReceiveTransfer2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransfer(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
// @Bean
// public Subscription subscriptionReceiveTransfer3(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransfer(listenerContainer, 3);
// listenerContainer.start();
// return subscription;
// }
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 验票更新 */
//
// @Bean
// public Subscription subscriptionReceiveTransfer4(RedisConnectionFactory factory) {
// public Subscription subscriptionReceiveTransfer0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransfer(listenerContainer, 4);
// var subscription = receiveTransfer(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
//// @Bean
//// public Subscription subscriptionReceiveTransfer1(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransfer(listenerContainer, 1);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionReceiveTransfer2(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransfer(listenerContainer, 2);
//// listenerContainer.start();
//// return subscription;
//// }
//
//// @Bean
//// public Subscription subscriptionReceiveTransfer3(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransfer(listenerContainer, 3);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionReceiveTransfer4(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransfer(listenerContainer, 4);
//// listenerContainer.start();
//// return subscription;
//// }
/* -------------------------------------------------------- | */
}
package com.liquidnet.service.consumer.slowly.config;
import com.liquidnet.common.cache.redis.config.RedisStreamConfig;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.consumer.slowly.receiver.ConsumerKylinTransferResultRdsReceiver;
import lombok.var;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -11,71 +12,93 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
import static com.liquidnet.service.base.constant.MQConst.KylinQueue.SQL_TRANSFER_RESULT;
@Configuration
public class ConsumerKylinSqlTransferResultRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerKylinTransferResultRdsReceiver consumerKylinTransferResultRdsReceiver;
/**
* 验票更新
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveTransferResult(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(SQL_TRANSFER_RESULT.getGroup(), getConsumerName(SQL_TRANSFER_RESULT.name() + t)),
StreamOffset.create(SQL_TRANSFER_RESULT.getKey(), ReadOffset.lastConsumed()), consumerKylinTransferResultRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 验票更新 */
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionReceiveTransferResult0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveTransferResult(listenerContainer, 0);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.KylinQueue stream = SQL_TRANSFER_RESULT;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 1; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerKylinTransferResultRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
// @Bean
// public Subscription subscriptionReceiveTransferResult1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferResult(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// /**
// * 验票更新
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveTransferResult(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(SQL_TRANSFER_RESULT.getGroup(), getConsumerName(SQL_TRANSFER_RESULT.name() + t)),
// StreamOffset.create(SQL_TRANSFER_RESULT.getKey(), ReadOffset.lastConsumed()), consumerKylinTransferResultRdsReceiver);
// }
//
// @Bean
// public Subscription subscriptionReceiveTransferResult2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferResult(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
// @Bean
// public Subscription subscriptionReceiveTransferResult3(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferResult(listenerContainer, 3);
// listenerContainer.start();
// return subscription;
// }
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 验票更新 */
//
// @Bean
// public Subscription subscriptionReceiveTransferResult4(RedisConnectionFactory factory) {
// public Subscription subscriptionReceiveTransferResult0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferResult(listenerContainer, 4);
// var subscription = receiveTransferResult(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
/* -------------------------------------------------------- | */
//
//// @Bean
//// public Subscription subscriptionReceiveTransferResult1(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransferResult(listenerContainer, 1);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionReceiveTransferResult2(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransferResult(listenerContainer, 2);
//// listenerContainer.start();
//// return subscription;
//// }
//
//// @Bean
//// public Subscription subscriptionReceiveTransferResult3(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransferResult(listenerContainer, 3);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionReceiveTransferResult4(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransferResult(listenerContainer, 4);
//// listenerContainer.start();
//// return subscription;
//// }
//
// /* -------------------------------------------------------- | */
}
......@@ -12,69 +12,91 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerSlimeFieldRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerSlimeFieldRdsReceiver consumerSlimeFieldRdsReceiver;
/**
* 场地相关更新
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveSqlField(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.SlimeQueue.SQL_SLIME_FIELD.getGroup(), getConsumerName(MQConst.SlimeQueue.SQL_SLIME_FIELD.name() + t)),
StreamOffset.create(MQConst.SlimeQueue.SQL_SLIME_FIELD.getKey(), ReadOffset.lastConsumed()), consumerSlimeFieldRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 场地相关更新 */
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionReceiveSqlField0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlField(listenerContainer, 0);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.SlimeQueue stream = MQConst.SlimeQueue.SQL_SLIME_FIELD;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 1; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerSlimeFieldRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
// @Bean
// public Subscription subscriptionReceiveSqlField1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlField(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// /**
// * 场地相关更新
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveSqlField(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.SlimeQueue.SQL_SLIME_FIELD.getGroup(), getConsumerName(MQConst.SlimeQueue.SQL_SLIME_FIELD.name() + t)),
// StreamOffset.create(MQConst.SlimeQueue.SQL_SLIME_FIELD.getKey(), ReadOffset.lastConsumed()), consumerSlimeFieldRdsReceiver);
// }
//
// @Bean
// public Subscription subscriptionReceiveSqlField2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlField(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
// @Bean
// public Subscription subscriptionReceiveSqlField3(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlField(listenerContainer, 3);
// listenerContainer.start();
// return subscription;
// }
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 场地相关更新 */
//
// @Bean
// public Subscription subscriptionReceiveSqlField4(RedisConnectionFactory factory) {
// public Subscription subscriptionReceiveSqlField0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlField(listenerContainer, 4);
// var subscription = receiveSqlField(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
/* -------------------------------------------------------- | */
//
//// @Bean
//// public Subscription subscriptionReceiveSqlField1(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlField(listenerContainer, 1);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionReceiveSqlField2(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlField(listenerContainer, 2);
//// listenerContainer.start();
//// return subscription;
//// }
//
//// @Bean
//// public Subscription subscriptionReceiveSqlField3(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlField(listenerContainer, 3);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionReceiveSqlField4(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlField(listenerContainer, 4);
//// listenerContainer.start();
//// return subscription;
//// }
//
// /* -------------------------------------------------------- | */
}
......@@ -12,13 +12,35 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerSlimeLineRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerSlimeLineRdsReceiver consumerSlimeLineRdsReceiver;
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.SlimeQueue stream = MQConst.SlimeQueue.SQL_SLIME_LINE;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 1; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerSlimeLineRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
/**
* 验票更新
......
......@@ -12,69 +12,92 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerSlimePerformanceInsertRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerSlimePerformanceInsertRdsReceiver consumerSlimePerformanceInsertRdsReceiver;
/**
* 验票更新
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveTransferResult(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.SlimeQueue.SQL_SLIME_PERFORMANCE_INSERT.getGroup(), getConsumerName(MQConst.SlimeQueue.SQL_SLIME_PERFORMANCE_INSERT.name() + t)),
StreamOffset.create(MQConst.SlimeQueue.SQL_SLIME_PERFORMANCE_INSERT.getKey(), ReadOffset.lastConsumed()), consumerSlimePerformanceInsertRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 验票更新 */
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionReceivePInsert0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveTransferResult(listenerContainer, 0);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.SlimeQueue stream = MQConst.SlimeQueue.SQL_SLIME_PERFORMANCE_INSERT;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 1; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerSlimePerformanceInsertRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
// @Bean
// public Subscription subscriptionReceivePInsert1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferResult(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionReceivePInsert2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferResult(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
// @Bean
// public Subscription subscriptionReceivePInsert3(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferResult(listenerContainer, 3);
// listenerContainer.start();
// return subscription;
// /**
// * 验票更新
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveTransferResult(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.SlimeQueue.SQL_SLIME_PERFORMANCE_INSERT.getGroup(), getConsumerName(MQConst.SlimeQueue.SQL_SLIME_PERFORMANCE_INSERT.name() + t)),
// StreamOffset.create(MQConst.SlimeQueue.SQL_SLIME_PERFORMANCE_INSERT.getKey(), ReadOffset.lastConsumed()), consumerSlimePerformanceInsertRdsReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 验票更新 */
//
// @Bean
// public Subscription subscriptionReceivePInsert4(RedisConnectionFactory factory) {
// public Subscription subscriptionReceivePInsert0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferResult(listenerContainer, 4);
// var subscription = receiveTransferResult(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
//// @Bean
//// public Subscription subscriptionReceivePInsert1(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransferResult(listenerContainer, 1);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionReceivePInsert2(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransferResult(listenerContainer, 2);
//// listenerContainer.start();
//// return subscription;
//// }
//
//// @Bean
//// public Subscription subscriptionReceivePInsert3(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransferResult(listenerContainer, 3);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionReceivePInsert4(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransferResult(listenerContainer, 4);
//// listenerContainer.start();
//// return subscription;
//// }
/* -------------------------------------------------------- | */
}
......@@ -12,69 +12,91 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerSlimePerformanceRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerSlimePerformanceRdsReceiver consumerSlimePerformanceRdsReceiver;
/**
* 验票更新
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveTransferResult(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.SlimeQueue.SQL_SLIME_PERFORMANCE_UPDATE.getGroup(), getConsumerName(MQConst.SlimeQueue.SQL_SLIME_PERFORMANCE_UPDATE.name() + t)),
StreamOffset.create(MQConst.SlimeQueue.SQL_SLIME_PERFORMANCE_UPDATE.getKey(), ReadOffset.lastConsumed()), consumerSlimePerformanceRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 验票更新 */
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionReceivePerformance0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveTransferResult(listenerContainer, 0);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.SlimeQueue stream = MQConst.SlimeQueue.SQL_SLIME_PERFORMANCE_UPDATE;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 1; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerSlimePerformanceRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
// @Bean
// public Subscription subscriptionReceivePerformance1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferResult(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// /**
// * 验票更新
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveTransferResult(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.SlimeQueue.SQL_SLIME_PERFORMANCE_UPDATE.getGroup(), getConsumerName(MQConst.SlimeQueue.SQL_SLIME_PERFORMANCE_UPDATE.name() + t)),
// StreamOffset.create(MQConst.SlimeQueue.SQL_SLIME_PERFORMANCE_UPDATE.getKey(), ReadOffset.lastConsumed()), consumerSlimePerformanceRdsReceiver);
// }
//
// @Bean
// public Subscription subscriptionReceivePerformance2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferResult(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
// @Bean
// public Subscription subscriptionReceivePerformance3(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferResult(listenerContainer, 3);
// listenerContainer.start();
// return subscription;
// }
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 验票更新 */
//
// @Bean
// public Subscription subscriptionReceivePerformance4(RedisConnectionFactory factory) {
// public Subscription subscriptionReceivePerformance0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferResult(listenerContainer, 4);
// var subscription = receiveTransferResult(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
//// @Bean
//// public Subscription subscriptionReceivePerformance1(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransferResult(listenerContainer, 1);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionReceivePerformance2(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransferResult(listenerContainer, 2);
//// listenerContainer.start();
//// return subscription;
//// }
//
//// @Bean
//// public Subscription subscriptionReceivePerformance3(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransferResult(listenerContainer, 3);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionReceivePerformance4(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransferResult(listenerContainer, 4);
//// listenerContainer.start();
//// return subscription;
//// }
/* -------------------------------------------------------- | */
}
......@@ -12,69 +12,91 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerSlimeSponsorRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerSlimeSponsorRdsReceiver consumerSlimeSponsorRdsReceiver;
/**
* 主办相关更新
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveSqlSponsor(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.SlimeQueue.SQL_SLIME_SPONSOR.getGroup(), getConsumerName(MQConst.SlimeQueue.SQL_SLIME_SPONSOR.name() + t)),
StreamOffset.create(MQConst.SlimeQueue.SQL_SLIME_SPONSOR.getKey(), ReadOffset.lastConsumed()), consumerSlimeSponsorRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 主办相关更新 */
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionReceiveSqlSponsor0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlSponsor(listenerContainer, 0);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.SlimeQueue stream = MQConst.SlimeQueue.SQL_SLIME_SPONSOR;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 1; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerSlimeSponsorRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
// @Bean
// public Subscription subscriptionReceiveSqlSponsor1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlSponsor(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// /**
// * 主办相关更新
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveSqlSponsor(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.SlimeQueue.SQL_SLIME_SPONSOR.getGroup(), getConsumerName(MQConst.SlimeQueue.SQL_SLIME_SPONSOR.name() + t)),
// StreamOffset.create(MQConst.SlimeQueue.SQL_SLIME_SPONSOR.getKey(), ReadOffset.lastConsumed()), consumerSlimeSponsorRdsReceiver);
// }
//
// @Bean
// public Subscription subscriptionReceiveSqlSponsor2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlSponsor(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
// @Bean
// public Subscription subscriptionReceiveSqlSponsor3(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlSponsor(listenerContainer, 3);
// listenerContainer.start();
// return subscription;
// }
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 主办相关更新 */
//
// @Bean
// public Subscription subscriptionReceiveSqlSponsor4(RedisConnectionFactory factory) {
// public Subscription subscriptionReceiveSqlSponsor0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlSponsor(listenerContainer, 4);
// var subscription = receiveSqlSponsor(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
/* -------------------------------------------------------- | */
//
//// @Bean
//// public Subscription subscriptionReceiveSqlSponsor1(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlSponsor(listenerContainer, 1);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionReceiveSqlSponsor2(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlSponsor(listenerContainer, 2);
//// listenerContainer.start();
//// return subscription;
//// }
//
//// @Bean
//// public Subscription subscriptionReceiveSqlSponsor3(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlSponsor(listenerContainer, 3);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionReceiveSqlSponsor4(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveSqlSponsor(listenerContainer, 4);
//// listenerContainer.start();
//// return subscription;
//// }
//
// /* -------------------------------------------------------- | */
}
......@@ -12,37 +12,59 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerSlimeStep2RedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerSlimeStep2RdsReceiver consumerSlimeStep2RdsReceiver;
/**
* 验票更新
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveTransferResult(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.SlimeQueue.SQL_SLIME_STEP2.getGroup(), getConsumerName(MQConst.SlimeQueue.SQL_SLIME_STEP2.name() + t)),
StreamOffset.create(MQConst.SlimeQueue.SQL_SLIME_STEP2.getKey(), ReadOffset.lastConsumed()), consumerSlimeStep2RdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 验票更新 */
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionReceiveStep20(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveTransferResult(listenerContainer, 0);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.SlimeQueue stream = MQConst.SlimeQueue.SQL_SLIME_STEP2;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 1; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerSlimeStep2RdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
//
// /**
// * 验票更新
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveTransferResult(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.SlimeQueue.SQL_SLIME_STEP2.getGroup(), getConsumerName(MQConst.SlimeQueue.SQL_SLIME_STEP2.name() + t)),
// StreamOffset.create(MQConst.SlimeQueue.SQL_SLIME_STEP2.getKey(), ReadOffset.lastConsumed()), consumerSlimeStep2RdsReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 验票更新 */
//
// @Bean
// public Subscription subscriptionReceiveStep20(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferResult(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
// @Bean
// public Subscription subscriptionReceiveStep21(RedisConnectionFactory factory) {
......
......@@ -12,69 +12,91 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerSlimeTicketRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerSlimeTicketRdsReceiver consumerSlimeTicketRdsReceiver;
/**
* 验票更新
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveTransferResult(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.SlimeQueue.SQL_SLIME_TICKET_UPDATE.getGroup(), getConsumerName(MQConst.SlimeQueue.SQL_SLIME_TICKET_UPDATE.name() + t)),
StreamOffset.create(MQConst.SlimeQueue.SQL_SLIME_TICKET_UPDATE.getKey(), ReadOffset.lastConsumed()), consumerSlimeTicketRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 验票更新 */
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionReceiveTicket0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveTransferResult(listenerContainer, 0);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.SlimeQueue stream = MQConst.SlimeQueue.SQL_SLIME_TICKET_UPDATE;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 1; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerSlimeTicketRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
// @Bean
// public Subscription subscriptionReceiveTicket1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferResult(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// /**
// * 验票更新
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveTransferResult(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.SlimeQueue.SQL_SLIME_TICKET_UPDATE.getGroup(), getConsumerName(MQConst.SlimeQueue.SQL_SLIME_TICKET_UPDATE.name() + t)),
// StreamOffset.create(MQConst.SlimeQueue.SQL_SLIME_TICKET_UPDATE.getKey(), ReadOffset.lastConsumed()), consumerSlimeTicketRdsReceiver);
// }
//
// @Bean
// public Subscription subscriptionReceiveTicket2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferResult(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
// @Bean
// public Subscription subscriptionReceiveTicket3(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferResult(listenerContainer, 3);
// listenerContainer.start();
// return subscription;
// }
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 验票更新 */
//
// @Bean
// public Subscription subscriptionReceiveTicket4(RedisConnectionFactory factory) {
// public Subscription subscriptionReceiveTicket0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveTransferResult(listenerContainer, 4);
// var subscription = receiveTransferResult(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
//// @Bean
//// public Subscription subscriptionReceiveTicket1(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransferResult(listenerContainer, 1);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionReceiveTicket2(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransferResult(listenerContainer, 2);
//// listenerContainer.start();
//// return subscription;
//// }
//
//// @Bean
//// public Subscription subscriptionReceiveTicket3(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransferResult(listenerContainer, 3);
//// listenerContainer.start();
//// return subscription;
//// }
////
//// @Bean
//// public Subscription subscriptionReceiveTicket4(RedisConnectionFactory factory) {
//// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
//// var subscription = receiveTransferResult(listenerContainer, 4);
//// listenerContainer.start();
//// return subscription;
//// }
/* -------------------------------------------------------- | */
}
# begin-dev-这里是配置信息基本值
liquidnet:
cloudConfig:
profile: dev
profile: test
security:
username: user
password: user123
......
......@@ -12,53 +12,75 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerStoneLogsRedisStreamConfig extends RedisStreamConfig {
@Autowired
RedisInsertLogReceiver redisInsertLogReceiver;
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveSqlStoneInsertLog(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.StoneQueue.STONE_INSERT_LOGS.getGroup(), getConsumerName(MQConst.StoneQueue.STONE_INSERT_LOGS.name() + t)),
StreamOffset.create(MQConst.StoneQueue.STONE_INSERT_LOGS.getKey(), ReadOffset.lastConsumed()), redisInsertLogReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Bean
public Subscription subscriptionSqlStoneInsertLog0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlStoneInsertLog(listenerContainer, 0);
listenerContainer.start();
return subscription;
}
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionSqlStoneInsertLog1(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlStoneInsertLog(listenerContainer, 1);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.StoneQueue stream = MQConst.StoneQueue.STONE_INSERT_LOGS;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 3; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), redisInsertLogReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
@Bean
public Subscription subscriptionSqlStoneInsertLog2(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlStoneInsertLog(listenerContainer, 2);
listenerContainer.start();
return subscription;
}
// /**
// * 缺票登记
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveSqlStoneInsertLog(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.StoneQueue.STONE_INSERT_LOGS.getGroup(), getConsumerName(MQConst.StoneQueue.STONE_INSERT_LOGS.name() + t)),
// StreamOffset.create(MQConst.StoneQueue.STONE_INSERT_LOGS.getKey(), ReadOffset.lastConsumed()), redisInsertLogReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 缺票登记 */
//
// @Bean
// public Subscription subscriptionSqlStoneInsertLog0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlStoneInsertLog(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlStoneInsertLog1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlStoneInsertLog(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlStoneInsertLog2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlStoneInsertLog(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
/* -------------------------------------------------------- | */
}
......@@ -12,53 +12,75 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerStoneOrderRedisStreamConfig extends RedisStreamConfig {
@Autowired
RedisInsertOrderReceiver redisInsertOrderReceiver;
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveSqlStoneInsertOrder(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.StoneQueue.STONE_ORDER_COUPON.getGroup(), getConsumerName(MQConst.StoneQueue.STONE_ORDER_COUPON.name() + t)),
StreamOffset.create(MQConst.StoneQueue.STONE_ORDER_COUPON.getKey(), ReadOffset.lastConsumed()), redisInsertOrderReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Bean
public Subscription subscriptionSqlStoneInsertOrder0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlStoneInsertOrder(listenerContainer, 0);
listenerContainer.start();
return subscription;
}
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionSqlStoneInsertOrder1(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlStoneInsertOrder(listenerContainer, 1);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.StoneQueue stream = MQConst.StoneQueue.STONE_ORDER_COUPON;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 3; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), redisInsertOrderReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
@Bean
public Subscription subscriptionSqlStoneInsertOrder2(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlStoneInsertOrder(listenerContainer, 2);
listenerContainer.start();
return subscription;
}
// /**
// * 缺票登记
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveSqlStoneInsertOrder(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.StoneQueue.STONE_ORDER_COUPON.getGroup(), getConsumerName(MQConst.StoneQueue.STONE_ORDER_COUPON.name() + t)),
// StreamOffset.create(MQConst.StoneQueue.STONE_ORDER_COUPON.getKey(), ReadOffset.lastConsumed()), redisInsertOrderReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 缺票登记 */
//
// @Bean
// public Subscription subscriptionSqlStoneInsertOrder0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlStoneInsertOrder(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlStoneInsertOrder1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlStoneInsertOrder(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlStoneInsertOrder2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlStoneInsertOrder(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
/* -------------------------------------------------------- | */
}
......@@ -12,53 +12,76 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
@Configuration
public class ConsumerStoneUserRedisStreamConfig extends RedisStreamConfig {
@Autowired
RedisInsertUserReceiver redisInsertUserReceiver;
@Autowired
StringRedisTemplate stringRedisTemplate;
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveSqlStoneInsertUser(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(MQConst.StoneQueue.STONE_INSERT_USER.getGroup(), getConsumerName(MQConst.StoneQueue.STONE_INSERT_USER.name() + t)),
StreamOffset.create(MQConst.StoneQueue.STONE_INSERT_USER.getKey(), ReadOffset.lastConsumed()), redisInsertUserReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Bean
public Subscription subscriptionSqlStoneInsertUser0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlStoneInsertUser(listenerContainer, 0);
listenerContainer.start();
return subscription;
}
@Bean
public Subscription subscriptionSqlStoneInsertUser1(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlStoneInsertUser(listenerContainer, 1);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.StoneQueue stream = MQConst.StoneQueue.STONE_INSERT_USER;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 3; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), redisInsertUserReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
@Bean
public Subscription subscriptionSqlStoneInsertUser2(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlStoneInsertUser(listenerContainer, 2);
listenerContainer.start();
return subscription;
}
// /**
// * 缺票登记
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveSqlStoneInsertUser(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(MQConst.StoneQueue.STONE_INSERT_USER.getGroup(), getConsumerName(MQConst.StoneQueue.STONE_INSERT_USER.name() + t)),
// StreamOffset.create(MQConst.StoneQueue.STONE_INSERT_USER.getKey(), ReadOffset.lastConsumed()), redisInsertUserReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 缺票登记 */
//
// @Bean
// public Subscription subscriptionSqlStoneInsertUser0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlStoneInsertUser(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlStoneInsertUser1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlStoneInsertUser(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlStoneInsertUser2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlStoneInsertUser(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
/* -------------------------------------------------------- | */
}
package com.liquidnet.service.consumer.sweet.config;
import com.liquidnet.common.cache.redis.config.RedisStreamConfig;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.consumer.sweet.receiver.ConsumerSweetAnswerRdsReceiver;
import lombok.var;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -11,55 +12,77 @@ import org.springframework.data.redis.connection.stream.Consumer;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.ReadOffset;
import org.springframework.data.redis.connection.stream.StreamOffset;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.stream.StreamMessageListenerContainer;
import org.springframework.data.redis.stream.Subscription;
import java.util.ArrayList;
import java.util.List;
import static com.liquidnet.service.base.constant.MQConst.SweetQueue.SWEET_ANSWER_INSERT;
@Configuration
public class ConsumerSweetAnswerRedisStreamConfig extends RedisStreamConfig {
@Autowired
ConsumerSweetAnswerRdsReceiver consumerSweetAnswerRdsReceiver;
/**
* 缺票登记
*
* @param listenerContainer
* @param t
* @return
*/
private Subscription receiveSqlAnswer(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
return listenerContainer.receiveAutoAck(Consumer.from(SWEET_ANSWER_INSERT.getGroup(), getConsumerName(SWEET_ANSWER_INSERT.name() + t)),
StreamOffset.create(SWEET_ANSWER_INSERT.getKey(), ReadOffset.lastConsumed()), consumerSweetAnswerRdsReceiver);
}
/* —————————————————————————— | —————————————————————————— | —————————————————————————— */
/* -------------------------------------------------------- | 缺票登记 */
@Bean
public Subscription subscriptionSqlAnswer0(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlAnswer(listenerContainer, 0);
listenerContainer.start();
return subscription;
}
@Autowired
StringRedisTemplate stringRedisTemplate;
@Bean
public Subscription subscriptionSqlAnswer1(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlAnswer(listenerContainer, 1);
listenerContainer.start();
return subscription;
public List<Subscription> subscriptionSql(RedisConnectionFactory factory) {
List<Subscription> subscriptionList = new ArrayList<>();
MQConst.SweetQueue stream = MQConst.SweetQueue.SWEET_ANSWER_INSERT;
this.initStream(stringRedisTemplate, stream.getKey(), stream.getGroup());
for (int i = 0; i < 3; i++) {
StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer = this.buildStreamMessageListenerContainer(factory);
subscriptionList.add(listenerContainer.receiveAutoAck(
Consumer.from(stream.getGroup(), getConsumerName(stream.name() + i)),
StreamOffset.create(stream.getKey(), ReadOffset.lastConsumed()), consumerSweetAnswerRdsReceiver
));
listenerContainer.start();
}
return subscriptionList;
}
@Bean
public Subscription subscriptionSqlAnswer2(RedisConnectionFactory factory) {
var listenerContainer = this.buildStreamMessageListenerContainer(factory);
var subscription = receiveSqlAnswer(listenerContainer, 2);
listenerContainer.start();
return subscription;
}
// /**
// * 缺票登记
// *
// * @param listenerContainer
// * @param t
// * @return
// */
// private Subscription receiveSqlAnswer(StreamMessageListenerContainer<String, MapRecord<String, String, String>> listenerContainer, int t) {
// return listenerContainer.receiveAutoAck(Consumer.from(SWEET_ANSWER_INSERT.getGroup(), getConsumerName(SWEET_ANSWER_INSERT.name() + t)),
// StreamOffset.create(SWEET_ANSWER_INSERT.getKey(), ReadOffset.lastConsumed()), consumerSweetAnswerRdsReceiver);
// }
//
// /* —————————————————————————— | —————————————————————————— | —————————————————————————— */
//
// /* -------------------------------------------------------- | 缺票登记 */
//
// @Bean
// public Subscription subscriptionSqlAnswer0(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlAnswer(listenerContainer, 0);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlAnswer1(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlAnswer(listenerContainer, 1);
// listenerContainer.start();
// return subscription;
// }
//
// @Bean
// public Subscription subscriptionSqlAnswer2(RedisConnectionFactory factory) {
// var listenerContainer = this.buildStreamMessageListenerContainer(factory);
// var subscription = receiveSqlAnswer(listenerContainer, 2);
// listenerContainer.start();
// return subscription;
// }
/* -------------------------------------------------------- | */
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment