File was renamed from src/main/java/com/genersoft/iot/vmp/conf/RedisConfig.java |
| | |
| | | package com.genersoft.iot.vmp.conf;
|
| | | package com.genersoft.iot.vmp.conf.redis; |
| | | |
| | |
|
| | | import com.alibaba.fastjson.parser.ParserConfig;
|
| | | import com.genersoft.iot.vmp.common.VideoManagerConstants;
|
| | | import com.genersoft.iot.vmp.service.impl.*;
|
| | | import org.apache.commons.lang3.StringUtils;
|
| | | import org.springframework.beans.factory.annotation.Autowired;
|
| | | import org.springframework.beans.factory.annotation.Value;
|
| | | import org.springframework.cache.annotation.CachingConfigurerSupport;
|
| | | import org.springframework.context.annotation.Bean;
|
| | | import org.springframework.context.annotation.Configuration;
|
| | | import org.springframework.data.redis.connection.RedisConnectionFactory;
|
| | | import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory;
|
| | | import org.springframework.data.redis.core.RedisTemplate;
|
| | | import org.springframework.data.redis.listener.PatternTopic;
|
| | | import org.springframework.data.redis.listener.RedisMessageListenerContainer;
|
| | | import org.springframework.data.redis.serializer.RedisSerializer; |
| | | import org.springframework.data.redis.serializer.StringRedisSerializer;
|
| | |
|
| | | import com.genersoft.iot.vmp.utils.redis.FastJsonRedisSerializer;
|
| | |
| | | @Autowired
|
| | | private RedisPushStreamStatusMsgListener redisPushStreamStatusMsgListener;
|
| | |
|
| | | @Autowired |
| | | private RedisPushStreamListMsgListener redisPushStreamListMsgListener; |
| | | |
| | | @Bean
|
| | | public RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
|
| | | RedisTemplate<Object, Object> redisTemplate = new RedisTemplate<>();
|
| | |
| | | redisTemplate.setHashValueSerializer(fastJsonRedisSerializer);
|
| | | // 全局开启AutoType,不建议使用
|
| | | ParserConfig.getGlobalInstance().setAutoTypeSupport(true);
|
| | | // 建议使用这种方式,小范围指定白名单,需要序列化的类
|
| | | // ParserConfig.getGlobalInstance().addAccept("com.avatar");
|
| | | // key的序列化采用StringRedisSerializer
|
| | | redisTemplate.setKeySerializer(new StringRedisSerializer());
|
| | | redisTemplate.setHashKeySerializer(new StringRedisSerializer());
|
| | |
| | | container.addMessageListener(redisStreamMsgListener, new PatternTopic(VideoManagerConstants.WVP_MSG_STREAM_CHANGE_PREFIX + "PUSH"));
|
| | | container.addMessageListener(redisGbPlayMsgListener, new PatternTopic(RedisGbPlayMsgListener.WVP_PUSH_STREAM_KEY));
|
| | | container.addMessageListener(redisPushStreamStatusMsgListener, new PatternTopic(VideoManagerConstants.VM_MSG_PUSH_STREAM_STATUS_CHANGE));
|
| | | container.addMessageListener(redisPushStreamListMsgListener, new PatternTopic(VideoManagerConstants.VM_MSG_PUSH_STREAM_LIST_CHANGE)); |
| | | return container;
|
| | | }
|
| | |
|