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);
	}
}
相关推荐
sjmaysee21 小时前
Windows操作系统部署Tomcat详细讲解
java·windows·tomcat
渔阳节度使1 天前
SpringAI实时监控+观测性
后端·python·flask
Victor3561 天前
MongoDB(42)如何使用$project阶段?
后端
Victor3561 天前
MongoDB(43)什么是嵌入式文档?
后端
1.14(java)1 天前
Spring-boot快速上手
java·开发语言·javaee
Darkdreams1 天前
SpringBoot项目集成ONLYOFFICE
java·spring boot·后端
bropro1 天前
【Spring Boot】Spring AOP中的环绕通知
spring boot·后端·spring
lhbian1 天前
【Spring Cloud Alibaba】基于Spring Boot 3.x 搭建教程
java·spring boot·后端
luom01021 天前
springcloud springboot nacos版本对应
spring boot·spring·spring cloud
IT_陈寒1 天前
Redis性能提升3倍的5个冷门技巧,90%开发者都不知道!
前端·人工智能·后端