日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

關于Java程序服務預熱那些事

來源: 責編: 時間:2024-03-18 09:38:20 231觀看
導讀一、背景1.1 什么是服務預熱所謂服務預熱,就是在服務啟動完成到對外提供服務之前,針對特定場景提供一些初始化準備操作。比如線程池預熱、緩存預熱、數據庫預熱、web預熱和JVM預熱等。1.2 為什么要預熱因為服務剛啟動的

一、背景

1.1 什么是服務預熱

所謂服務預熱,就是在服務啟動完成到對外提供服務之前,針對特定場景提供一些初始化準備操作。ssa28資訊網——每日最新資訊28at.com

比如線程池預熱、緩存預熱、數據庫預熱、web預熱和JVM預熱等。ssa28資訊網——每日最新資訊28at.com

1.2 為什么要預熱

因為服務剛啟動的時候需要一段磨合期,這段期間,服務運行狀態沒有達到最佳。因此,如果這時候一下子將服務流量提升到正常水平,就有可能導致大量請求超時或者瞬間將系統壓垮。ssa28資訊網——每日最新資訊28at.com

針對 Web 應用的場景,將Java程序啟動分為兩個過程:ssa28資訊網——每日最新資訊28at.com

1、啟動過程:是指從JVM 啟動到程序初始化完成能響應第一個請求的階段。由于啟動時需要動態類加載和程序啟動時的初始化,導致啟動會比較慢。啟動慢會影響程序的響應度,減慢 Web 應用擴容。ssa28資訊網——每日最新資訊28at.com

2、預熱過程:是指從JVM 啟動到程序優化完成、達到性能峰值的階段。預熱慢會導致 Web 應用無法及時的處理完用戶請求,造成大量請求超時。ssa28資訊網——每日最新資訊28at.com

圖片圖片ssa28資訊網——每日最新資訊28at.com

二、如何預熱

2.1 預熱緩存

a.連接池預熱

和數據庫連接池一樣,我們可以在應用啟動時,根據需要初始化若干連接放入連接池,從而避免請求過來的時候再創建而影響性能。ssa28資訊網——每日最新資訊28at.com

系統啟動時,嘗試獲取若干連接(這里取最小閑置),此時連接池為空,生成連接后會放入連接池,等請求進來的時候就不會再去創建連接了。ssa28資訊網——每日最新資訊28at.com

圖片圖片ssa28資訊網——每日最新資訊28at.com

b.熱點數據預熱

  • 數據存到redis中

處理方案:ssa28資訊網——每日最新資訊28at.com

1、配置一個定時任務,刷新緩存數據。ssa28資訊網——每日最新資訊28at.com

2、直接寫個緩存刷新頁面,上線后手動刷新。ssa28資訊網——每日最新資訊28at.com

  • 數據存到本地

對于一些訪問度特別高的熱點數據,在極端情況下,考慮到服務到redis有網絡延遲以及序列化和反序列化消耗,所以放入redis緩存是不太理想的。ssa28資訊網——每日最新資訊28at.com

那么對于這些數據我們可以考慮放入本地緩存,當然這些數據量不能太大。對于極端的熱點數據放入本地緩存后,請求獲取數據在應用維度基本沒有任何消耗,沒有網絡延遲也沒有序列化和反序列化消耗。ssa28資訊網——每日最新資訊28at.com

可以使用guava 的cachessa28資訊網——每日最新資訊28at.com

2.2 預熱線程池

1)請求接收線程池

以tomcat為例,我們可以配置初始化創建線程的數量來做線程池預熱。ssa28資訊網——每日最新資訊28at.com

圖片ssa28資訊網——每日最新資訊28at.com

2)自定義線程池

對于自定義線程池,初始化時候調用prestartAllCoreThreads方法即可。ssa28資訊網——每日最新資訊28at.com

圖片ssa28資訊網——每日最新資訊28at.com

3)預熱DB連接池

服務啟動時根據需要創建若干數據庫連接,放到連接池中,然后應用啟動處理數據庫讀寫請求時,可以直接從連接池中拿連接來用,避免了讀寫請求創建連接并放入連接池的流程耗時。ssa28資訊網——每日最新資訊28at.com

我們常用的連接池Druid提供了比較方便的連接池預熱能力。常見的配置方式:ssa28資訊網——每日最新資訊28at.com

圖片ssa28資訊網——每日最新資訊28at.com

4)JVM預熱

大家都知道,Java語言是解釋執行和編譯執行共同存在的。即Java源代碼文件(.java)首先由Javac編譯為字節碼(.class),然后字節碼由各操作系統對應的虛擬機解釋或編譯執行。ssa28資訊網——每日最新資訊28at.com

為了提高執行速度,引入了JIT(Just-in-time compilation)。在運行時,JIT會把編譯過來的機器碼保存起來,以便下次使用。JIT只會對經常執行的熱點代碼進行編譯,如循環,高頻度使用的方法等。ssa28資訊網——每日最新資訊28at.com

JVM默認開啟JIT編譯,可以檢查啟動參數-Xint和-Djava.compiler=NONE,如果有說明關閉了JIT,根據需要可以移除重新開啟JIT。ssa28資訊網——每日最新資訊28at.com

此外,JDK1.8引入了Lambda表達式,給開發人員帶來了很多方便,但是過度的使用Lambda表達式也會帶來負面效果。lambda表達式的原理是在執行時生成匿名內部類,并且需要加載和編譯。ssa28資訊網——每日最新資訊28at.com

所以對于一些熱點代碼可以選擇不使用Lambda表達式,或者在服務啟動時進行預調用,經過充分的調用之后使其成為熱點代碼,后續的調用就會走JIT編譯,就會跳過生成匿名內部類、加載的步驟,也就提升了執行效率。ssa28資訊網——每日最新資訊28at.com

三、預熱的問題及解決

3.1 時長

既然在服務啟動階段加入了預熱邏輯,就會產生損耗,最直接的體現就是服務啟動時間變長,可能幾分鐘到十幾分鐘不等。ssa28資訊網——每日最新資訊28at.com

但啟動慢不一定就是壞事,相當于是在對外提供服務之前做了充足的初始化以及預熱準備。ssa28資訊網——每日最新資訊28at.com

當然事情都有兩面性,關鍵的是要在啟動快與慢之間找到一個平衡點,在保證服務能夠在可接受的時間內啟動,并且上線之后短時間內就能提供高質量的服務。ssa28資訊網——每日最新資訊28at.com

3.2 CPU升高

在實際應用過程中,遇到了CPU突增的情況。如下圖,服務在啟動時會收到CPU報警,查看監控發現CPU使用率是平時的2倍以上。ssa28資訊網——每日最新資訊28at.com

圖片圖片ssa28資訊網——每日最新資訊28at.com

查看啟動時的預熱代碼,發現會觸發下面的請求,如圖,請求量是平時正常水平的幾百倍。因此定位應該是預熱代碼的問題。ssa28資訊網——每日最新資訊28at.com

圖片圖片ssa28資訊網——每日最新資訊28at.com

預熱代碼如下:ssa28資訊網——每日最新資訊28at.com

圖片圖片ssa28資訊網——每日最新資訊28at.com

圖片圖片ssa28資訊網——每日最新資訊28at.com

上述代碼使用CountDownLatch作為計數器,在服務啟動時,觸發三個熱點接口,以達到預熱的目的。但是由于參數過多導致服務的請求激增,引發報警。ssa28資訊網——每日最新資訊28at.com

問題定位之后,我們降低了入參數量,減少了循環次數,從而減少了服務自請求次數,問題得以修復。ssa28資訊網——每日最新資訊28at.com

四、總結

以上是服務預熱的一些常見方式,服務預熱是把雙刃劍,在使用之前,需要搞清楚哪些服務需要預熱。對于需要預熱的服務,需要搞清楚具體需要預熱哪些內容,不能盲目預熱,容易適得其反。ssa28資訊網——每日最新資訊28at.com

本文鏈接:http://m.www897cc.com/showinfo-26-76493-0.html關于Java程序服務預熱那些事

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 我應該使用按鈕還是鏈接

下一篇: RabbitMQ代碼篇之過期時間,死信隊列,延遲隊列,優先級隊列的基本使用

標簽:
  • 熱門焦點
  • 轎車從天而降電動車主被撞身亡 超速搶道所致:現場視頻讓網友吵翻

    近日,上海青浦區法院判決轎車從天而降電動車主被撞身亡案,轎車車主被判有期徒刑一年。案件顯示當時男子駕駛轎車在上海某路段行駛,前車忽然轉彎提速超車,
  • 三言兩語說透設計模式的藝術-簡單工廠模式

    一、寫在前面工廠模式是最常見的一種創建型設計模式,通常說的工廠模式指的是工廠方法模式,是使用頻率最高的工廠模式。簡單工廠模式又稱為靜態工廠方法模式,不屬于GoF 23種設計
  • 谷歌KDD'23工作:如何提升推薦系統Ranking模型訓練穩定性

    谷歌在KDD 2023發表了一篇工作,探索了推薦系統ranking模型的訓練穩定性問題,分析了造成訓練穩定性存在問題的潛在原因,以及現有的一些提升模型穩定性方法的不足,并提出了一種新
  • 虛擬鍵盤 API 的妙用

    你是否在遇到過這樣的問題:移動設備上有一個固定元素,當激活虛擬鍵盤時,該元素被隱藏在了鍵盤下方?多年來,這一直是 Web 上的默認行為,在本文中,我們將探討這個問題、為什么會發生
  • “又被陳思誠騙了”

    作者|張思齊 出品|眾面(ID:ZhongMian_ZM)如今的國產懸疑電影,成了陳思誠的天下。最近大爆電影《消失的她》票房突破30億斷層奪魁暑期檔,陳思誠再度風頭無兩。你可以說陳思誠的
  • 消費結構調整丨巨頭低價博弈,拼多多還卷得動嗎?

    來源:征探財經作者:陳香羽隨著流量紅利的退潮,電商的存量博弈越來越明顯。曾經主攻中高端與品質的淘寶天貓、京東重拾“低價”口號。而過去與他們錯位競爭的拼多多,靠
  • 小米MIX Fold 3下月亮相:今年唯一無短板的全能折疊屏

    這段時間以來,包括三星、一加、榮耀等等有不少品牌旗下的最新折疊屏旗艦都有新的進展,其中榮耀、三星都已陸續發布了最新的折疊屏旗艦,尤其號榮耀Magi
  • iQOO 11S新品發布會

    iQOO將在7月4日19:00舉行新品發布會,推出杭州亞運會電競賽事官方用機iQOO 11S。
  • 榮耀Magic4 至臻版 首創智慧隱私通話 強勁影音系統

    2022年第一季度臨近尾聲,在該季度內,許多品牌陸續發布自己的最新產品,讓大家從全新的角度來了解當今的手機技術。手機是電子設備中,更新迭代十分迅速的一款產品,基
Top 日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不
午夜电影亚洲| 永久域名在线精品| 欧美视频日韩| 国产精品毛片va一区二区三区 | 久久综合给合| 欧美久久精品午夜青青大伊人| 欧美成人免费小视频| 欧美午夜性色大片在线观看| 国产亚洲精品福利| 91久久国产自产拍夜夜嗨| 亚洲香蕉视频| 久久五月婷婷丁香社区| 欧美日韩成人网| 国产亚洲成人一区| 亚洲日本va午夜在线影院| 亚洲永久网站| 老司机一区二区| 国产精品久久久久免费a∨大胸| 韩曰欧美视频免费观看| 一区二区精品在线| 久久人人超碰| 国产精品伦子伦免费视频| 在线观看国产精品淫| 亚洲视频免费在线| 蜜桃精品一区二区三区| 国产精品一区二区男女羞羞无遮挡| 好男人免费精品视频| 中文在线一区| 欧美成人免费小视频| 国产伦理一区| 一区二区三区国产精华| 看欧美日韩国产| 国产精品视频一区二区三区| 亚洲欧洲日产国码二区| 久久国产加勒比精品无码| 欧美日本高清一区| 在线观看日韩一区| 欧美一区二区视频97| 欧美日韩一区二区三区免费| 亚洲第一在线综合网站| 欧美一区二区在线看| 欧美视频一区二区| 亚洲欧洲综合另类在线| 久久九九全国免费精品观看| 国产精品人成在线观看免费| 亚洲免费久久| 免费观看成人网| 国产专区精品视频| 亚洲欧美日韩国产中文| 欧美区二区三区| 91久久夜色精品国产网站| 久久理论片午夜琪琪电影网| 国产欧美日韩精品一区| 在线综合亚洲欧美在线视频| 欧美黑人在线观看| 亚洲第一区在线观看| 久久久久久9999| 国产一区二区三区av电影| 午夜伦理片一区| 国产精品每日更新| 亚洲一区二区黄色| 欧美手机在线视频| 亚洲久久在线| 欧美精品在线观看播放| 亚洲欧洲在线观看| 欧美刺激性大交免费视频| 亚洲第一在线| 女同一区二区| 亚洲黄网站在线观看| 免费欧美电影| 亚洲国产精品一区二区久| 两个人的视频www国产精品| 激情久久久久久久| 久久久久久尹人网香蕉| 黄色亚洲在线| 老司机免费视频一区二区三区| 精品91免费| 免播放器亚洲| 亚洲欧洲日产国产综合网| 美女任你摸久久| 亚洲黄色天堂| 欧美日韩国产区一| 一区二区三区久久| 国产精品久久久久久一区二区三区| 亚洲色图在线视频| 国产精品美女久久| 性欧美1819sex性高清| 国产午夜精品理论片a级探花| 欧美专区在线播放| 狠狠88综合久久久久综合网| 久久综合中文色婷婷| 亚洲黑丝在线| 欧美视频中文在线看| 亚洲欧美精品在线观看| 国产三级欧美三级日产三级99| 久久国产视频网| 亚洲成色777777在线观看影院| 蜜桃精品一区二区三区| 亚洲日本黄色| 国产精品成人在线观看| 欧美亚洲视频在线看网址| 黄色资源网久久资源365| 你懂的视频欧美| 亚洲作爱视频| 国产精品一区二区在线| 久久精品亚洲| 亚洲欧洲一区| 国产精品久久久久9999高清| 久久成人人人人精品欧| 亚洲国产综合91精品麻豆| 欧美三级乱人伦电影| 欧美在线观看视频一区二区| 亚洲福利电影| 欧美午夜片在线观看| 久久av二区| 亚洲片区在线| 国产精品一卡| 免费成人黄色av| 一区二区三区欧美激情| 国产午夜精品理论片a级探花| 欧美 日韩 国产精品免费观看| 亚洲视频成人| 极品尤物一区二区三区| 欧美日韩中文字幕综合视频| 欧美一区二区三区免费看| 亚洲黄色高清| 国产精品呻吟| 欧美v国产在线一区二区三区| 亚洲午夜一级| 在线精品高清中文字幕| 国产精品高潮呻吟| 卡一卡二国产精品| 亚洲一区二区动漫| 在线观看亚洲视频| 欧美午夜在线观看| 开心色5月久久精品| 亚洲午夜免费视频| 亚洲国产精品一区二区三区| 国产精品亚洲欧美| 欧美精品色网| 久久久噜噜噜| 亚洲制服丝袜在线| 亚洲日本黄色| 国产在线日韩| 国产精品www994| 免费美女久久99| 欧美一级精品大片| 99精品热视频| 在线视频观看日韩| 国产目拍亚洲精品99久久精品| 欧美精品性视频| 久久在精品线影院精品国产| 亚洲欧美中文另类| 夜夜嗨av一区二区三区网站四季av | 国产精品视频久久| 欧美电影美腿模特1979在线看| 午夜精品久久久久久| 日韩亚洲欧美成人| 1024成人| 国产在线精品自拍| 国产精品乱码| 欧美日韩国产不卡| 你懂的视频一区二区| 久久国产精品72免费观看| 亚洲一级免费视频| 日韩网站在线观看| 亚洲高清久久网| 狠狠久久亚洲欧美专区| 国产精品亚洲网站| 国产精品第一区| 欧美日韩不卡合集视频| 免费h精品视频在线播放| 久久国产日本精品| 香蕉久久一区二区不卡无毒影院| 一区二区三区国产在线观看| 亚洲人www| 亚洲国产清纯| 亚洲高清视频在线观看| 精品av久久久久电影| 国产午夜精品一区二区三区视频| 国产精品美女一区二区| 国产精品久久久久av免费| 欧美日韩国产综合在线| 欧美国产第一页| 欧美电影在线观看| 久热爱精品视频线路一| 久久久国产91| 久久国产欧美精品| 久久精品99| 久久精品亚洲一区二区| 久久精品99国产精品日本| 欧美在线观看网站| 欧美影片第一页| 欧美一区二区精品久久911| 午夜亚洲一区| 欧美在线视屏| 久久精品一二三区| 久久嫩草精品久久久久| 久久九九精品| 久久综合久久88| 农村妇女精品| 欧美福利在线观看| 欧美另类高清视频在线| 欧美日韩卡一卡二|