spring boot devtools遇到的坑
背景:
專案中用到了spring boot devtools實現本地專案熱部署,很方便;上線之後壓測發現有些不樂觀,服務的記憶體一直不能釋放,看GC的log,回收了也不好使;
問題排查:
dump下來jvm快照檔案.hprof,使用JProfiler和IBMAnalyzer工具分析,發現並沒有特殊大的地方佔用記憶體;
於是在本地使用JMeter工具壓測,用JVisualVM工具實時監測jvm情況,堆疊並沒有異常現象,但是在在抽樣器->執行緒,
的時候發現了問題,有個叫:File Watcher的執行緒,只要服務活著,就一直佔用大量記憶體(ps:問題可能就是這裡,GC不掉);
然後本地debug,這裡有個重要的打斷點方式,就是在java.lang.Thread所有賦值 this.name 的地方打斷點,並且寫上condition表示式篩選:name.contains("File Watcher")
發現是spring boot devtools開啟的這個執行緒,監視所有檔案變化;
至此問題定位到了,我直接用簡單粗暴的方法,刪掉devtools的maven依賴,此問題解決。
相關推薦
spring boot devtools遇到的坑
背景: 專案中用到了spring boot devtools實現本地專案熱部署,很方便;上線之後壓測發現有些不樂觀,服務的記憶體一直不能釋放,看GC的log,回收了也不好使; 問題排查: dump下來jvm快照檔案.hprof,使用JProfiler和IB
使用spring-boot-devtools熱部署遇到的坑
spring-boot版本1.5.3.RELEASE spring-boot-devtools版本1.5.9.RELEASE jdk 1.7 問題:當我在修改class檔案時,手動重新編譯class檔案時,工具就會出現異常資訊(如果工具設定為自動編譯是不會提示這個錯誤資訊的
IDEA如何設置spring-boot-devtools即所見即所得
手動 存在 如何 ogl dea idea bsp 查看 search 首先了解spring boot devtools基本概念 即存在即合理 地址:https://docs.spring.io/spring-boot/docs/current/reference/ht
Intellij IDEA 使用Spring-boot-devTools無效解決辦法
csdn 手動 .net reg 配置 相信自己 script log ref 相信大部分使用Intellij的同學都會遇到這個問題,即使項目使用了spring-boot-devtools,修改了類或者html、js等,idea還是不會自動重啟,非要手動去make一下或者重
spring-boot-devtools在Idea中熱部署方法
maven cache too wid onf ram 組合 ng- app 一、概述 spring boob 項目在開發中修改了項目文件不能進行熱部署,著實影響效率。 二、熱部署配置 2.1 POM文件 <plugin> <groupId>
spring-boot-devtools
tomat clas tools rop ati eclips starting void sin Create a new Maven Project and we have two class under the package com.example.demo l
使用IDEA 中 實現springboot 熱部署 (spring boot devtools版)
apple convert lang start class tool 但是 原理 tty 第一步:添加springboot的配置文件 首先我先貼出我的配置 添加依賴包 <!-- spring boot devtools 依賴包. --> &
spring-boot-devtools 2.0熱部署失效
內部 lease 沒有 tools 什麽 ren class -s 原因 <parent> <groupId>org.springframework.boot</groupId> <arti
添加spring-boot-devtools熱部署報錯
pre fig ica option tool pan 解決方案 解決 true 使用的eclipse部署的spring boot,百度了下,大部分的問題都是說IDE工具使用熱部署無法成功的解決方案,看了很懵逼 <!-- 熱部署模塊 --> <depend
mvn spring-boot:repackage神坑“'spring.datasource.url' is not specified and no embedded datasource...”
問題: 一開始以為是`spring.datasource.url`配置有問題,後來發現Intellij idea下能執行,但是打成jar包就不能執行,於是反應過來,應該是application.properties等配置檔案,沒有被打進包裡面去。解壓jar包,果然沒有在classes中找
spring boot jpa(踩坑)
1資料庫帶兩個引數,一個時區,一個utf-8 spring: datasource: url: jdbc:mysql://127.0.0.1:3306/test?serverTimezone=GMT%2B8&characterEncoding=UTF-8
Spring boot 初步踩坑記(一)
初步使用spring boot + mybatis 組合,然而在eclipse 內執行 妥妥的 一點的問題都沒有。打包成jar 和war ,執行時,報錯: Field XXXXin XXXX.DemoApplication required a bean of type
spring boot 初步踩坑(二)—— 打包載入本地jar
打包時載入本地jar,度娘提供了幾種方式,下邊是我遇到的幾種方式: 1、打包jar 有兩種方式 1) org.springframework.boot spring-boot-maven-plug
Spring boot 初步踩坑(三)——Thymeleaf javaScript 聯動 數值變化
之前網上搜索 Thymeleaf 標籤 可以直接在js 裡面 獲取 action返回的值,一直在用,今天突然出現了一個奇葩問題,一個時間戳字串,java後臺列印是20180917161154369 通過js 再傳回去就成了2018091716115438了
IntelliJ IDEA中使用spring-boot-devtools熱部署無效的解決辦法
在專案中引用spring-boot-devtools依賴後,發現熱部署沒有生效,原因是在IntelliJ IDEA中預設沒有開啟“自動編譯”的功能,需要手動進行配置即可。 開啟Settings設定視
spring-boot-devtools熱部署配置
pom.xml檔案新增配置資訊 1.新增依賴包 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot
mvn spring-boot:repackage神坑“'spring.datasource.url' is not specified and no embedded datasource...”
問題: 一開始以為是`spring.datasource.url`配置有問題,後來發現Intellij idea下能執行,但是打成jar包就不能執行,於是反應過來,應該是application.properties等配置檔案,沒有被打進包裡面去。解壓jar包,果
Spring Boot Devtools熱部署
記錄小技術,點滴成河。 平日裡開發專案中,修改了Java程式碼或者配置檔案的時候,必須手動重啟專案才能生效。所謂的熱部署就是在你修改了後端程式碼後不需要手動重啟,工具會幫你快速的自動重啟是修改生效。 其深層原理是使用了兩個ClassLoader,一個Classloader載入那些不會
Spring Boot 自動重啟(spring-boot-devtools)
注意事項: 1. 我在debug啟動時,專案啟動結束時停到了如下位置: ``` public static void exitCurrentThread() { throw new Si
SpringBoot:使用spring-boot-devtools進行熱部署以及不生效的問題解決
在idea上怎麼才能使用Spring的熱部署 這裡僅用Maven做介紹(1)在Maven中新增依賴(2)在外掛配置但是,為什麼配置了還是沒有用呢 ?!這是因為idea預設是沒有自動編譯的,我們這裡需要新