springboot程式總是有超時連線的情況

2021-10-09 17:55:12 字數 1244 閱讀 2012

事情是這樣的,部署在阿里雲,使用人數並不多,有人能正常訪問使用,有人會超時,

1:資料量不大的情況下,總結應該是預設的資料庫連線池未做修改,一旦

此類問題看我們常用的連線池常主要有c3p0,dbcp,tomcat-jdbc-pool,druid,hikaricp。

可以查下對應的如何配置資料庫連線池大小

這裡說下druid

配置預設值

說明name

配置這個屬性的意義在於,如果存在多個資料來源,監控的時候可以通過名字來區分開來。 

如果沒有配置,將會生成乙個名字,格式是:"datasource-" + system.identityhashcode(this)

jdbcurl

連線資料庫的url,不同資料庫不一樣。例如: 

mysql : jdbc:mysql://localhost:3306/druid

oracle : jdbc:oracle:thin:@localhost:1521:mydb

username

連線資料庫的使用者名稱

password

連線資料庫的密碼。如果你不希望密碼直接寫在配置檔案中,可以使用configfilter。詳細看這裡:

driverclassname

根據url自動識別

這一項可配可不配,如果不配置druid會根據url自動識別dbtype,然後選擇相應的driverclassname(建議配置下)

initialsize

0初始化時建立物理連線的個數。初始化發生在顯示呼叫init方法,或者第一次getconnection時

maxactive

8最大連線池數量

maxidle

8已經不再使用,配置了也沒效果

minidle

最小連線池數量

maxwait

獲取連線時最大等待時間,單位毫秒。配置了maxwait之後,預設啟用公平鎖,併發效率會有所下降,如果需要可以通過配置useunfairlock屬性為true使用非公平鎖。

需要修改最大連線池數量加大,預設是8,有幾個人同時用就會存在連線池的連線不夠的情況

2:使用者量比較多的情況,單應用程式

此類併發問題存在,資料庫也需要進行優化,可以通過druid監控找到慢sql,對慢sql進行優化來減少每一次訪問的時間,減少超時

技術人員私活平台,無手續費,歡迎加入

機會總是有的

今天在瀏覽雷軍的微博,無意看到這樣一句 今天的網際網路已經巨頭割據,創業非常艱難,要想闖出一片天地,就必須顛覆現有的遊戲規則。我相信創業還是有機會,因為當年就說過,一切派都是紙老虎.真正強大的力量不是屬於派,而是屬於人民。今天真正強大的力量不是這些巨頭,是數億的網民!以使用者為中心,顛覆創新,這是王...

程式示例中為何總是有foo之類的函式

foo 和 foobar 等單詞經常會作為示例名稱,出現在各種程式和技術文件中。據統計,在各種計算機和通訊技術文件中,大約有百分之七的文件出現了這些詞 語。可是這些檔案都沒有為它們給出合適的解釋。雖然這不是個大問題,但對於初學者,尤其是母語非英語的人來說,這些單詞往往會帶來不小的迷惑。本文就介紹 一...

總是有人可以優秀!

又一天過去了。晚上 點多去光明跑步了,死黨和我說,如果能騎自行車從上海騎到北京,或者從澳門一直騎到上海,那麼大學裡除了壯觀的掛科以外,至少還有一點東西可以回憶。我輕輕嘲笑他的妄想。畢業對他來說是一種很快意的事,終於熬出頭了!對於我,既有一種長久疲憊和掙扎後到達終點的釋放和解脫,也有四年來朝夕相處積累...