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);
	}
}
相关推荐
斯特凡今天也很帅1 分钟前
新建数据源报错No bean named ‘SqlSessionFactorykf‘ available
java·数据库·spring boot·mybatis
带刺的坐椅1 分钟前
用 Solon AI 从零构建 MCP 工具服务:让 AI Agent 拥有真实世界的能力
java·ai·solon·mcp·solon-ai
TheRouter7 分钟前
PromptCaching 工程实践:把LLM 调用成本砍掉80%
java·后端·spring·ai
寻道码路7 分钟前
LangChain4j Java AI 应用开发实战(二):大模型参数调优实战:Temperature、TopP、MaxTokens 深度解析
java·开发语言·人工智能·aigc
Gopher_HBo9 分钟前
Go pprof性能剖析
后端
XiYang-DING14 分钟前
【Spring】 Ajax
spring·ajax·okhttp
IT策士17 分钟前
Django 从 0 到 1 打造完整电商平台:个人中心与用户信息修改
后端·python·django
小明同学0121 分钟前
C++后端项目:统一大模型接入 SDK(五)
服务器·c++·后端·计算机网络·语言模型
SimonKing22 分钟前
IP定位库的完美替代品:ip2region,开源、免费!
java·后端·程序员
XiYang-DING23 分钟前
【Spring】Lombok
java·后端·spring