av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

詳解如何更改SpringBoot TomCat運行方式

瀏覽:109日期:2023-03-15 10:14:26
1. 為什么要更改SpringBoot運行方式?

Tomcat Connector(連接器)有三種運行模式:bio nio apr

bio(blocking I/O)

即阻塞式I/O操作,表示Tomcat使用的是傳統的Java I/O操作(即java.io包及其子包),是基于JAVA的HTTP/1.1連接器,Tomcat7以下版本在默認情況下是以bio模式運行的。一般而言,bio模式是三種運行模式中性能最低的一種。我們可以通過Tomcat Manager來查看服務器的當前狀態。(Tomcat7 或以下,在 Linux 系統中默認使用這種方式) 一個線程處理一個請求,缺點:并發量高時,線程數較多,浪費資源

nio(new I/O)

是Java SE 1.4及后續版本提供的一種新的I/O操作方式(即java.nio包及其子包)。Java nio是一個基于緩沖區、并能提供非阻塞I/O操作的Java API,因此nio也被看成是non-blocking I/O(非阻塞IO)的縮寫。它擁有比傳統I/O操作(bio)更好的并發運行性能。要讓Tomcat以nio模式來運行只需要在Tomcat安裝目錄/conf/server.xml 中將對應的中protocol的屬性值改為 org.apache.coyote.http11.Http11NioProtocol即可

<Connector port='1024' protocol='org.apache.coyote.http11.Http11NioProtocol' connectionTimeout='20000' redirectPort='8443' />

apr(Apache Portable Runtime/Apache可移植運行時)

Tomcat將以JNI的形式調用Apache HTTP服務器的核心動態鏈接庫來處理文件讀取或網絡傳輸操作,從而大大地提高Tomcat對靜態文件的處理性能。Tomcat apr也是在Tomcat上運行高并發應用的首選模式。從操作系統級別來解決異步的IO問題 tomcat8.0 以上默認已經支持了apr(低版本趕緊換了吧)

而SpringBoot默認是以 java -Xmx256m -Xss256k -jar xx.jar 來運行內置Tomcat啟動方式默認是NIO,所以想用Apr方式啟動怎么辦呢?

2.移除SpringBoot內置Tomcat容器。

更改pom文件

<packaging>jar</packaging> 改為=> <packaging>war</packaging><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <!-- 移除嵌入式tomcat插件--> <exclusions><exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId></exclusion> </exclusions></dependency><!-- 移除內嵌Tomcat需要重新添加servlet --><dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>${servlet.version}</version> <scope>provided</scope></dependency>

在 Application 啟動類中繼承SpringBootServletInitializer具體類代碼如下

package com.ctx.springboot;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.boot.builder.SpringApplicationBuilder;import org.springframework.boot.web.support.SpringBootServletInitializer;@SpringBootApplicationpublic class SpringBootStartApplication extends SpringBootServletInitializer {@Overrideprotected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {return builder.sources(SpringBootStartApplication.class);}}

這樣就可以使用把SpringBoot項目打包成war扔到8.0以上的tomcat里跑運行方式默認就變成apr了如下圖:

詳解如何更改SpringBoot TomCat運行方式

到此這篇關于詳解如何更改SpringBoot TomCat運行方式的文章就介紹到這了,更多相關更改SpringBoot TomCat運行方式內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Spring
相關文章:
主站蜘蛛池模板: 国色天香综合网 | 欧美一二区 | 天天爽夜夜爽精品视频婷婷 | 午夜在线视频 | 成人在线免费视频观看 | 欧美亚洲第一区 | 成人欧美一区二区三区在线播放 | 国产精品久久久久久久久久 | 中文字幕精品一区二区三区精品 | 免费欧美视频 | 99国产精品一区二区三区 | 精品国产一区二区三区久久狼黑人 | 翔田千里一区二区 | 18成人在线观看 | 高清久久久 | 日韩久久精品视频 | 久久久亚洲 | 国产福利在线视频 | 精品少妇一区二区三区在线播放 | 91一区二区三区在线观看 | 福利精品在线观看 | 免费黄色a视频 | 五月婷婷丁香婷婷 | 91精品国产综合久久久动漫日韩 | 亚洲精品电影 | 国产成人麻豆免费观看 | 国产精品永久 | 日本视频在线播放 | 日韩欧美国产一区二区三区 | 亚洲日本一区二区 | 欧美精品片 | 九九精品在线 | 欧美极品在线视频 | 国产精品五月天 | 羞羞的视频免费看 | 日韩黄色av | 久久99蜜桃综合影院免费观看 | 午夜免费观看网站 | 日韩在线中文字幕 | 久久高清国产 | 天天操天天干天天曰 |