最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

關(guān)于mongodb連接池配置方式

 更新時(shí)間:2025年03月19日 10:06:51   作者:輪孑哥  
這篇文章主要介紹了關(guān)于mongodb連接池配置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

mongodb連接池配置

參考官方描述

如果spring使用以下mongodb的配置

則默認(rèn)是沒(méi)有連接池的

spring:
  data:
    mongodb:
      host: 地址
      port: 27017
      database: 數(shù)據(jù)庫(kù)名
      username: 賬號(hào)
      password: 密碼

每隔一兩分鐘沒(méi)有去請(qǐng)求的話就會(huì)斷開(kāi)連接重連,每次都要等待5-10秒之間才重新連接上,請(qǐng)求速度很慢,這一點(diǎn)確實(shí)非常不友好。

出現(xiàn)這種問(wèn)題就是maxIdleTimeMS時(shí)間太長(zhǎng),縮短每次連接刪除和關(guān)閉之前保持的空閑狀態(tài)等待時(shí)間就可以避免這個(gè)問(wèn)題,但也會(huì)造成連接池的頻繁連接和關(guān)閉。

每次打開(kāi)和關(guān)閉控制臺(tái)打印如下提示:

Closed connection [connectionId{localValue:11, serverValue:1607}] to xxx.cc:27017 because there was a socket exception raised by this connection.
Opened connection [connectionId{localValue:21, serverValue:1623}] to xxx.cc:27017

maxIdleTimeMS我設(shè)置時(shí)間為30秒,不知道為什么我設(shè)置為120秒、60秒好像都不管用。

mongodb的配置

  • 就盡量不要用上面的方式來(lái)配,需要使用uri的方式來(lái)去配,不需要在java代碼中去寫(xiě)配置類,不需要在java代碼中去寫(xiě)配置類,不需要在java代碼中去寫(xiě)配置類。
spring:
  data:
    mongodb:
      uri: mongodb://數(shù)據(jù)庫(kù)賬號(hào):數(shù)據(jù)庫(kù)密碼@數(shù)據(jù)庫(kù)地址:27017/數(shù)據(jù)庫(kù)名稱?connectTimeoutMS=5000&socketTimeoutMS=3000&maxPoolSize=30000&minPoolSize=0&maxIdleTimeMS=1000&readPreference=primary&retryWrites=true
  • uri的前半部分:注意符號(hào)格式是固定
mongodb://數(shù)據(jù)庫(kù)賬號(hào):數(shù)據(jù)庫(kù)密碼@數(shù)據(jù)庫(kù)地址:27017/數(shù)據(jù)庫(kù)名稱
  • uri的后半部分是一些額外配置選項(xiàng),使用 " ? "這個(gè)問(wèn)號(hào)進(jìn)行標(biāo)識(shí)分割,每一個(gè)配置選項(xiàng)之間使用" & "符號(hào)來(lái)銜接。
?connectTimeoutMS=5000
&socketTimeoutMS=3000
&maxPoolSize=30000
&minPoolSize=0
&maxIdleTimeMS=1000
&readPreference=primary
&retryWrites=true

連接池中的最小連接數(shù)。默認(rèn)值為 。

connectTimeoutMS

在超時(shí)之前嘗試連接的時(shí)間(以毫秒為單位)。默認(rèn)值為 10,000 毫秒,但特定驅(qū)動(dòng)程序可能具有不同的默認(rèn)值

socketTimeoutMS

在嘗試超時(shí)之前嘗試在套接字上發(fā)送或接收的時(shí)間(以毫秒為單位)。默認(rèn)值為永不超時(shí),盡管不同的驅(qū)動(dòng)程序可能會(huì)有所不同

maxPoolSize連接池中的最大連接數(shù)。默認(rèn)值為 。100
minPoolSize

連接池中的最小連接數(shù)。默認(rèn)值為 。0

maxIdleTimeMS

連接在刪除和關(guān)閉之前可以在池中保持空閑狀態(tài)的最大毫秒數(shù)。

并非所有驅(qū)動(dòng)程序都支持此選項(xiàng)。

readPreference指定此連接的讀取首選項(xiàng)。
retryWrites啟用可重試寫(xiě)入。

需要特別注意maxIdleTimeMS這個(gè)時(shí)間的設(shè)置,多次測(cè)試證實(shí)了:超過(guò)設(shè)置的指定時(shí)間后所有線程池的空閑線程連接會(huì)被自動(dòng)關(guān)閉,關(guān)閉后所有線程池空閑線程會(huì)重新連接

參數(shù)配置,根據(jù)你們需求來(lái) ,我只是給出個(gè)示例

更多參數(shù)選項(xiàng)參考地址

測(cè)試連接斷開(kāi)后,控制臺(tái)日志如下:已經(jīng)開(kāi)啟指定數(shù)量的線程池?zé)o誤

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SQL中Limit的基本與高級(jí)用法詳解

    SQL中Limit的基本與高級(jí)用法詳解

    在SQL中LIMIT是一個(gè)用于限制結(jié)果集返回的行數(shù)的子句,這篇文章主要給大家介紹了關(guān)于SQL中Limit的基本與高級(jí)用法,文中通過(guò)代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用sql具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2024-04-04
  • MySQL redo日志寫(xiě)入磁盤(pán)的實(shí)現(xiàn)過(guò)程

    MySQL redo日志寫(xiě)入磁盤(pán)的實(shí)現(xiàn)過(guò)程

    這篇文章主要介紹了MySQL redo日志寫(xiě)入磁盤(pán)的實(shí)現(xiàn)過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-06-06
  • SQL Server 完整備份遇到的一個(gè)不常見(jiàn)的錯(cuò)誤及解決方法

    SQL Server 完整備份遇到的一個(gè)不常見(jiàn)的錯(cuò)誤及解決方法

    這篇文章給大家介紹了SQL Server 完整備份遇到的一個(gè)不常見(jiàn)的錯(cuò)誤及解決方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2019-05-05
  • 一文分享10個(gè)常用的MySQL高級(jí)用法

    一文分享10個(gè)常用的MySQL高級(jí)用法

    MySQL?有很多高級(jí)但實(shí)用的功能,能讓你的查詢變得更簡(jiǎn)潔、更高效,今天分享?10?個(gè)我在工作中經(jīng)常使用的?SQL?技巧,不用死記硬背,掌握了就能立刻提升你的數(shù)據(jù)庫(kù)操作水平
    2025-12-12
  • MySQL中使用auto_increment修改初始值和步長(zhǎng)

    MySQL中使用auto_increment修改初始值和步長(zhǎng)

    本文主要介紹了MySQL中使用auto_increment修改初始值和步長(zhǎng),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • MySQL問(wèn)答系列之什么情況下會(huì)用到臨時(shí)表

    MySQL問(wèn)答系列之什么情況下會(huì)用到臨時(shí)表

    MySQL在很多情況下都會(huì)用到臨時(shí)表,下面這篇文章主要給大家介紹了關(guān)于MySQL在什么情況下會(huì)用到臨時(shí)表的相關(guān)資料,文中介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-09-09
  • mysql 定時(shí)任務(wù)的實(shí)現(xiàn)與使用方法示例

    mysql 定時(shí)任務(wù)的實(shí)現(xiàn)與使用方法示例

    這篇文章主要介紹了mysql 定時(shí)任務(wù)的實(shí)現(xiàn)與使用方法,結(jié)合實(shí)例形式分析了MySQL定時(shí)任務(wù)的相關(guān)原理、創(chuàng)建及使用方法,需要的朋友可以參考下
    2019-11-11
  • MySQL不支持InnoDB的解決方法

    MySQL不支持InnoDB的解決方法

    在OpenSUSE下裝上MySQL后,發(fā)現(xiàn)無(wú)法選擇添加事務(wù)支持?jǐn)?shù)據(jù)引擎InnoDB。
    2009-11-11
  • 從入門(mén)到精通MySQL 數(shù)據(jù)庫(kù)索引(實(shí)戰(zhàn)案例)

    從入門(mén)到精通MySQL 數(shù)據(jù)庫(kù)索引(實(shí)戰(zhàn)案例)

    索引是數(shù)據(jù)庫(kù)的目錄,提升查詢速度,主要類型包括BTree、Hash、全文、空間索引,需根據(jù)場(chǎng)景選擇,建議用于高頻查詢、關(guān)聯(lián)字段、排序等,避免重復(fù)率高或頻繁更新字段,本文給大家介紹MySQL 數(shù)據(jù)庫(kù)索引實(shí)戰(zhàn)案例,感興趣的朋友一起看看吧
    2025-06-06
  • MySQL 事務(wù)隔離級(jí)別及實(shí)際業(yè)務(wù)應(yīng)用場(chǎng)景

    MySQL 事務(wù)隔離級(jí)別及實(shí)際業(yè)務(wù)應(yīng)用場(chǎng)景

    本文詳細(xì)介紹了MySQL的四種事務(wù)隔離級(jí)別(READ UNCOMMITTED、READ COMMITTED、REPEATABLE READ、SERIALIZABLE),并探討了每種隔離級(jí)別在實(shí)際業(yè)務(wù)中的應(yīng)用場(chǎng)景,感興趣的朋友跟隨小編一起看看吧
    2026-01-01

最新評(píng)論

子洲县| 东明县| 潞西市| 靖江市| 谷城县| 巴南区| 共和县| 蒙自县| 姚安县| 平南县| 建水县| 永丰县| 乌拉特后旗| 区。| 旬阳县| 盐边县| 赫章县| 错那县| 恩施市| 梅州市| 西平县| 都匀市| 华容县| 根河市| 鲁甸县| 铜山县| 绥中县| 武隆县| 白山市| 酒泉市| 调兵山市| 碌曲县| 孝昌县| 时尚| 景德镇市| 玉树县| 舒城县| 平远县| 泾川县| 阳泉市| 孟津县|