首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >带有嵌入式Tomcat的APR

带有嵌入式Tomcat的APR
EN

Stack Overflow用户
提问于 2018-02-01 12:05:45
回答 1查看 3.9K关注 0票数 1

我正在使用spring框架创建一个RESTApi。我的IDE是STS。嵌入式Tomcat概念非常有用,而且易于实现。只要导出一个jar,运行它,就可以让您的服务启动并运行,但是嵌入式Tomcat正在使用。我做了一些研究,发现APR HTTP连接器比Nio好得多,我想使用APR。还有一个选项:导出war文件,将其部署到tomcat中,并配置其HTTP连接器。但是我真的很喜欢嵌入式tomcat,我想知道它的HTTP连接器是否有可能从Nio更改为APR?

EN

回答 1

Stack Overflow用户

发布于 2022-05-26 05:55:48

我们可以通过覆盖org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory并为新的org.apache.catalina.connector.Connector提供org.apache.coyote.http11.Http11AprProtocol协议,从而在springboot嵌入式tomcat中启用APR。

下面的代码可能有助于完成它。

代码语言:javascript
运行
复制
@Bean
public TomcatServletWebServerFactory servletContainerFactoryProd() {
    TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory() {
        @Override
        protected TomcatWebServer getTomcatWebServer(Tomcat tomcat) {
            // to create new directories and files and add them to Context
            return super.getTomcatWebServer(tomcat);
        }
    };
    
    Connector connector = new Connector("org.apache.coyote.http11.Http11AprProtocol");
    Http11AprProtocol protocol = (Http11AprProtocol) connector.getProtocolHandler();
    connector.setProperty("compression", "on");
    connector.setProperty("compressableMimeType", "text/html,text/xml,text/plain,application/json,application/xml");
    // can also enable ssl and provide certificate details
    tomcat.addAdditionalTomcatConnectors(connector);
    return tomcat;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48562381

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档