Merge pull request #1642 from yefimov-andrey/mqtt-keep-alive-fix
Added MQTT keep-alive parameter
This commit is contained in:
		
						commit
						10058fe425
					
				@ -469,6 +469,7 @@ transport:
 | 
			
		||||
      boss_group_thread_count: "${NETTY_BOSS_GROUP_THREADS:1}"
 | 
			
		||||
      worker_group_thread_count: "${NETTY_WORKER_GROUP_THREADS:12}"
 | 
			
		||||
      max_payload_size: "${NETTY_MAX_PAYLOAD_SIZE:65536}"
 | 
			
		||||
      so_keep_alive: "${NETTY_SO_KEEPALIVE:true}"
 | 
			
		||||
    # MQTT SSL configuration
 | 
			
		||||
    ssl:
 | 
			
		||||
      # Enable/disable SSL support
 | 
			
		||||
 | 
			
		||||
@ -17,6 +17,7 @@ package org.thingsboard.server.transport.mqtt;
 | 
			
		||||
 | 
			
		||||
import io.netty.bootstrap.ServerBootstrap;
 | 
			
		||||
import io.netty.channel.Channel;
 | 
			
		||||
import io.netty.channel.ChannelOption;
 | 
			
		||||
import io.netty.channel.EventLoopGroup;
 | 
			
		||||
import io.netty.channel.nio.NioEventLoopGroup;
 | 
			
		||||
import io.netty.channel.socket.nio.NioServerSocketChannel;
 | 
			
		||||
@ -50,6 +51,8 @@ public class MqttTransportService {
 | 
			
		||||
    private Integer bossGroupThreadCount;
 | 
			
		||||
    @Value("${transport.mqtt.netty.worker_group_thread_count}")
 | 
			
		||||
    private Integer workerGroupThreadCount;
 | 
			
		||||
    @Value("${transport.mqtt.netty.so_keep_alive}")
 | 
			
		||||
    private boolean keepAlive;
 | 
			
		||||
 | 
			
		||||
    @Autowired
 | 
			
		||||
    private MqttTransportContext context;
 | 
			
		||||
@ -69,7 +72,8 @@ public class MqttTransportService {
 | 
			
		||||
        ServerBootstrap b = new ServerBootstrap();
 | 
			
		||||
        b.group(bossGroup, workerGroup)
 | 
			
		||||
                .channel(NioServerSocketChannel.class)
 | 
			
		||||
                .childHandler(new MqttTransportServerInitializer(context));
 | 
			
		||||
                .childHandler(new MqttTransportServerInitializer(context))
 | 
			
		||||
                .childOption(ChannelOption.SO_KEEPALIVE, keepAlive);
 | 
			
		||||
 | 
			
		||||
        serverChannel = b.bind(host, port).sync().channel();
 | 
			
		||||
        log.info("Mqtt transport started!");
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user