package com.dl.framework.config;
|
|
import io.undertow.server.DefaultByteBufferPool;
|
import io.undertow.websockets.jsr.WebSocketDeploymentInfo;
|
import org.springframework.boot.web.embedded.undertow.UndertowServletWebServerFactory;
|
import org.springframework.boot.web.server.WebServerFactoryCustomizer;
|
import org.springframework.context.annotation.Configuration;
|
|
/**
|
* Undertow 自定义配置
|
*
|
* @author Lion Li
|
*/
|
@Configuration
|
public class UndertowConfig implements WebServerFactoryCustomizer<UndertowServletWebServerFactory> {
|
|
/**
|
* 设置 Undertow 的 websocket 缓冲池
|
*/
|
@Override
|
public void customize(UndertowServletWebServerFactory factory) {
|
// 默认不直接分配内存 如果项目中使用了 websocket 建议直接分配
|
factory.addDeploymentInfoCustomizers(deploymentInfo -> {
|
WebSocketDeploymentInfo webSocketDeploymentInfo = new WebSocketDeploymentInfo();
|
webSocketDeploymentInfo.setBuffers(new DefaultByteBufferPool(false, 512));
|
deploymentInfo.addServletContextAttribute("io.undertow.websockets.jsr.WebSocketDeploymentInfo", webSocketDeploymentInfo);
|
});
|
}
|
|
}
|