日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

tomcat常用功能

發布時間:2023/12/10 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 tomcat常用功能 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

修改端口號

1024-655365 之間取端口號
Tomcat有3個重要端口:
默認訪問端口:8080
默認監聽關閉tomcat的端口:8005
默認AJP訪問端口:8009

vim tomcat/conf/server.xml ··· <Server port="8005" shutdown="SHUTDOWN"> #關閉時服務監聽的端口 ···<Connector port="8080" protocol="HTTP/1.1" #客戶端訪問監聽的端口connectionTimeout="20000"redirectPort="8443" /> ···<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> #處理AJP協議監聽的端口

修改內存

修改tomcat內存有兩種方式:

  • 修改bin目錄下的catalina.bat(Windows下)| catalina.sh(Linux下);
  • 修改bin目錄下的startup.bat(Windows下)| catalina.sh(Linux下);
  • JAVA_OPTS="-server -Xms256m -Xms512m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=256m" #將上面的代碼添加到catalina.sh的第二行,或設置catalina.sh中第250行左右的JAVA_OPTS后面的參數。#注:server:虛擬機的運行模式,多個CPU的時候更好的發揮性能。默認是client。Xms:堆內存。java heap初始大小,默認為物理內存的64分之1。最大不要超過物理內存的80%。Xmx:java heap的最大值,建議設置為物理內存的一半。MetaspaceSize:初始原空間的大小,默認21M。MaxMetaspaceSize:最大原空間大小,默認無上限 #另jvm默認的最小內存為機器物理內存的1/64,最大內存為機器物理內存的1/4

    為什么要修改Tomcat內存?

    日常開發中,開發項目比較大的時候依賴的jar包比較多,并且在應用服務器啟動的時候,會將項目引用的所有的類依次全部加載到內存當中,java的邏輯內存模式分為堆內存(存儲類的實例,數組、引用類型也就是用new生成的對象)、棧內存(存儲局部變量比如方法參數)、靜態內存區(持久區,該區內存不會被gc回收)

    常見內存異常:
    OutOfMemoryError:Java head space異常
    原因:堆內存滿,依賴的jar太多。
    OutOfMemoryError : PermGen space異常
    原因:靜態內存區滿,加載的類太多
    StackOverflowError異常
    原因:棧內存溢出,死循環或無限遞歸導致

    Tomcat的熱部署

    熱部署的三種方式:

    1、將web應用文件war包直接放在webapps里,tomcat運行時會自動解壓;2、修改sever.xml文件,在Host段內添加Context標簽。如下: <Context debug="0" path="/xxxxdemo" docBase="項目路徑" reloadable="true"></Context>#path為訪問時端口號后加的路徑,項目名。 #debug為項目異常時,輸出的日志文件的詳細程度,值越大越詳細。3、在conf/Catalina/localhost文件夾下新建xml文件,內容同上,這種情況不能設置path屬性,tomcat不認,只能用該xml文件的名字作為部署的應用名。如下: <?xml version="1.0" encoding="UTF-8"?> <Context docBase="項目路徑" reloadable="true"></Context>

    隱藏版本號

    • lib/catalina.jar/org/apache/catalina/util/ServerInfo.properties中server.info=Apache Tomcat/8.5.31改為NO VERSION

    AJP協議

    若tomcat前面用nginx反向代理則可以忽略ajp連接器(connector),如若使用的是apache httpd服務器則不能關閉ajp連接器,關閉該連接器只需要注釋掉server.xml中對應的節點即可。如下:

    修改Cookies安全性

    在tomcat context.xml配置文件中的context節點設置useHttpOnly=true即可開啟cookie加密,提高安全性,使cookie不那么容易被竊取,預防xss攻擊

    性能優化

    tomcat三種運動模式:

    • BIO:效率低下,一個線程只能處理一個請求,請求過多的時候,線程會相應的增加,很浪費資源,tomcat7以下版本是BIO,

    • NIO:基于緩存區、非阻塞的I/O。相對于BIO效率更高(少量線程處理多請求),

    • APR:需要操作系統的支持(tomcat7以及以上版本在操作系統安裝了APR時候,tomcat默認是apr模式)

    轉載于:https://www.cnblogs.com/Smbands/p/11468624.html

    總結

    以上是生活随笔為你收集整理的tomcat常用功能的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。