2026-06-26 20b96473f2520590a0dca6b775b81e3ea06a77a0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
package cn.iocoder.yudao.module.iot.gateway.protocol.udp;
 
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
 
/**
 * IoT UDP 协议配置
 *
 * @author 芋道源码
 */
@Data
public class IotUdpConfig {
 
    /**
     * 最大会话数
     */
    @NotNull(message = "最大会话数不能为空")
    @Min(value = 1, message = "最大会话数必须大于 0")
    private Integer maxSessions = 1000;
    /**
     * 会话超时时间(毫秒)
     * <p>
     * 基于 Guava Cache 的 expireAfterAccess 实现自动过期清理
     */
    @NotNull(message = "会话超时时间不能为空")
    @Min(value = 1000, message = "会话超时时间必须大于 1000 毫秒")
    private Long sessionTimeoutMs = 60000L;
 
    /**
     * 接收缓冲区大小(字节)
     */
    @NotNull(message = "接收缓冲区大小不能为空")
    @Min(value = 1024, message = "接收缓冲区大小必须大于 1024 字节")
    private Integer receiveBufferSize = 65536;
    /**
     * 发送缓冲区大小(字节)
     */
    @NotNull(message = "发送缓冲区大小不能为空")
    @Min(value = 1024, message = "发送缓冲区大小必须大于 1024 字节")
    private Integer sendBufferSize = 65536;
 
}