到目前为止,我知道如何在tomcat中添加一个自定义的执行器。但是,我不知道通过url前缀为不同的请求分配不同的执行程序。希望您的帮助!
以下是在tomcat中添加自定义执行程序的代码示例:
@Component
public class EmbeddedTomcatConfig implements
EmbeddedServletContainerCustomizer {
private static final Logger logger = LoggerFactory.getLogger(EmbeddedTomcatConfig.class);
@Override
public void customize(ConfigurableEmbeddedServletContainer container) {
if(container instanceof TomcatEmbeddedServletContainerFactory){
TomcatEmbeddedServletContainerFactory factory = (TomcatEmbeddedServletContainerFactory)container;
factory.addConnectorCustomizers(new TomcatConnectorCustomizer() {
@Override
public void customize(Connector connector) {
AdvancedThreadExecutor myExecutor =
new AdvancedThreadExecutor();
connector.getService().addExecutor(myExecutor);
ProtocolHandler handler = connector.getProtocolHandler();
Http11NioProtocol http11NioProtocol = (Http11NioProtocol)handler;
http11NioProtocol.setExecutor(myExecutor);
}
});
}
}
}