我正在为我的应用程序开发Microservices API.我从Spring Boot应用程序开始.我创建了两个工件 – “嵌入式tomcat的业务代码”和“没有嵌入式tomcat的业务代码”.
当我比较性能结果时,我可以看到“非嵌入式tomcat”(即在独立的tomcat上执行)由于本机执行而提供了良好的输出.
那么基本上嵌入式tomcat和独立tomcat之间的区别是什么呢?
两次执行之间的表现有何不同?
最佳答案
我找到了这个问题的根本原因.
APR(Apache Portable Runtime)在tomcat线程执行中起着重要作用.
默认情况下,嵌入式tomcat执行NIO. NIO和BIO是基于Java的执行,而APR是本机执行.当我们比较NIO和APR的性能时,APR要快得多.
事实上,所有基于Linux的tomcat包都附带了tomcat lib文件夹下的APR库.
在嵌入式tomcat(即Spring Boot)中启用APR后,与独立的tomcat相比,性能执行相同.
原文地址:https://www.jb51.cc/spring/432554.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。