簡體   English   中英

如何在Hibernate和MongoDB中使用副本集種子列表

[英]How do I use a replica set seed list with Hibernate and MongoDB

我有一個用Java編寫的應用程序,該應用程序是我控制之前由其他人編寫的。 我們正在使用具有副本集的MongoDB。 我知道,為了正確使用副本集,您需要向驅動程序傳遞與副本集關聯的所有服務器的“種子列表”,以便它選擇主副本集。

問題在於該應用程序正在使用Hibernate連接到MongoDB。 有沒有辦法在Hibernate xml配置文件中指定種子列表? 以下是我們在應用程序中配置的示例。

<hibernate-configuration>
    <session-factory>
        <property name="hibernate.ogm.datastore.provider">MONGODB</property>
        <property name="dialect">org.hibernate.ogm.dialect.mongodb.MongoDBDialect</property>
        <property name="hibernate.ogm.mongodb.database">databasename</property>
        <property name="hibernate.ogm.mongodb.host">192.168.1.10</property>
        <property name="hibernate.ogm.mongodb.port">27017</property>
        <mapping resource="mongodb.hbm.xml" />
    </session-factory>
</hibernate-configuration>

我試圖在該配置的屬性列表中找到文檔,但沒有發現為種子列表指定多個主機。 hibernate.ogm.mongodb.host是我唯一可以找到的東西,據我所知,它僅支持1個主機。

關於如何使用Hibernate使當前應用程序與副本集種子列表一起工作的任何想法?

Hibernate OGM的最新版本通過以下屬性支持此功能:

hibernate.ogm.datastore.host

這是一個有效值的示例:

www.example.com, www2.example.com:123, 192.0.2.1, 192.0.2.2:123, 2001:db8::ff00:42:8329, [2001:db8::ff00:42:8329]:123

默認值為127.0.0.1:27017。 如果未定義,則默認端口為27017。

官方文檔中有更多詳細信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM