Spring STOMP-WebSocket传输消息

本节介绍怎么配置底层的WebSocket服务器的消息传输。

对于Jakarta WebSocket服务器,在项目配置中添加一个ServletServerContainerFactoryBean。例如,请参阅WebSocket部分下的配置服务器

对于Jetty WebSocket服务器,如下这个例子自定义了JettyRequestUpgradeStrategy

复制代码
@Configuration
@EnableWebSocketMessageBroker
public class WebSocketConfig implements WebSocketMessageBrokerConfigurer {

	@Override
	public void registerStompEndpoints(StompEndpointRegistry registry) {
		registry.addEndpoint("/portfolio").setHandshakeHandler(handshakeHandler());
	}

	@Bean
	public DefaultHandshakeHandler handshakeHandler() {
		JettyRequestUpgradeStrategy strategy = new JettyRequestUpgradeStrategy();
		strategy.addWebSocketConfigurer(configurable -> {
				policy.setInputBufferSize(4 * 8192);
				policy.setIdleTimeout(600000);
		});
		return new DefaultHandshakeHandler(strategy);
	}
}

除了WebSocket服务器的属性外,还有一些STOMP WebSocket传输消息相关的属性可以自定义,如下所示:

复制代码
@Configuration
@EnableWebSocketMessageBroker
public class WebSocketConfig implements WebSocketMessageBrokerConfigurer {

	@Override
	public void configureWebSocketTransport(WebSocketTransportRegistration registry) {
		registry.setMessageSizeLimit(4 * 8192);
		registry.setTimeToFirstMessage(30000);
	}
}
相关推荐
wuqingshun31415910 分钟前
说说java中实现多线程有几种方法
java·开发语言·jvm
于眠牧北12 分钟前
重写RedisTemplate后在lua脚本中传递参数不需要二次转换
java·junit·lua
深蓝轨迹13 分钟前
SQL优化及实战分享
java·数据库·sql
毕业设计-小慧18 分钟前
计算机毕业设计springboot电影选座与订票系统 基于SpringBoot的影院在线票务管理平台 基于SpringBoot的智能影厅座位预约系统
spring boot·后端·课程设计
hashiqimiya20 分钟前
尝试其他项目使用本地仓库的jar包时报错没找到类的原因并下载到本地仓库
java·jar
常利兵28 分钟前
Spring Boot + MyBatis,给数据穿上“隐形盔甲”
java·spring boot·mybatis
xiaoye370830 分钟前
动态代理的使用场景与适用时机
java·数据库·sql
只做人间不老仙34 分钟前
grpc测试工具ghz的使用
后端·grpc
丶西红柿丶35 分钟前
python中函数也可以是对象
后端
Moe48838 分钟前
Java 反射机制
java·后端·架构