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);
	}
}
相关推荐
短剑重铸之日8 小时前
《ShardingSphere解读》07 读写分离:如何集成分库分表+数据库主从架构?
java·数据库·后端·架构·shardingsphere·分库分表
知我Deja_Vu8 小时前
【避坑指南】ConcurrentHashMap 并发计数优化实战
java·开发语言·python
wefly20179 小时前
m3u8live.cn 在线M3U8播放器,免安装高效验流排错
前端·后端·python·音视频·前端开发工具
daidaidaiyu9 小时前
Spring IOC 源码学习 事务相关的 BeanDefinition 解析过程 (XML)
java·spring
zhanggongzichu9 小时前
小白怎么理解后端分层概念
后端·全栈
鬼蛟10 小时前
Spring————事务
android·java·spring
西门吹-禅10 小时前
【sap fiori cds up error】
java·服务器·sap cap cds
stark张宇10 小时前
Golang后端面试复盘:从Swoole到IM架构,如何支撑360w用户的实时消息推送?
后端
小码哥_常11 小时前
从0到1:搭建Spring Boot 3企业级认证授权平台
后端
敲代码的嘎仔11 小时前
Java后端面试——SSM框架面试题
java·面试·职场和发展·mybatis·ssm·springboot·八股