因為今天開發(fā)遇到了性能問題,可能與MongoDB的連接有關(guān),所以稍稍深入看了一下,正好搜到原來有人寫過這篇相關(guān)的內(nèi)容,所以轉(zhuǎn)載過來。回頭有時間可以寫個擴(kuò)展到SpringForAll里,主體思路還是一樣的。感謝這位美女程序媛的文章!
說明
Spring Boot中通過依賴 spring-boot-starter-data-mongodb ,來實現(xiàn) spring-data-mongodb 的自動配置。
但是默認(rèn)情況下,Spring Boot 中,并沒有像使用MySQL或者Redis一樣,提供了連接池配置的功能。因此,我們需要自行重寫 MongoDbFactory ,實現(xiàn)MongoDB客戶端連接的參數(shù)配置擴(kuò)展。
需要說明的是,MongoDB的客戶端本身就是一個連接池,因此,我們只需要配置客戶端即可。
配置文件
為了統(tǒng)一Spring Boot的配置,我們要將重寫的配置也配置到 application.yml 中,前綴為 spring.data.mongodb.custom 下(前綴可自己隨意配置):
spring: data: mongodb: custom: hosts: - 10.0.5.1 - 10.0.5.1 ports: - 27017 - 27018 replica-set: mgset-3590061 username: jancee password: abc123 database: jancee authentication-database: admin connections-per-host: 20 min-connections-per-host: 20