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);
	}
}
相关推荐
风曳丷2 分钟前
05|Prompt Injection 不是一句神奇咒语
后端
liangbo74 分钟前
JVM规范第 4 章:class 文件格式
java·jvm
橘子汽水1684 分钟前
Leetcode 236,437:二叉树的最近公共祖先,路径总和III
java·数据结构
喜欢睡觉8 分钟前
单词管理系统
前端·后端
嘻哈baby10 分钟前
运维工程师必须掌握的基础技能有哪些?
后端
风曳丷11 分钟前
08|怎样证明一次 Prompt Injection 成功了
后端
数据狐(Datafox)12 分钟前
1688商品详情API技术解析与落地应用(含标准 JSON 示例)
java·数据库·json
刘立军14 分钟前
插件化与扩展点:引导 AI 模块化插拔开发,功能解耦便于迭代
人工智能·后端·架构
掘金者阿豪16 分钟前
HashMap 一篇讲透:从数组、链表、红黑树到扩容以及退化,面试再也不怕被追问
后端
用户8132679332518 分钟前
Python 计算盘中 VWAP:为什么 1 分钟 K 线是量化工程中的高性价比选择
后端·算法·github