2

我是吗啡的新手。我正在使用 morphia 和 mongo-java-driver.jar 通过 Java 程序与副本集(集群需要它)进行对话。我写了下面的示例程序:

public static void createDBConnection() {
    try {

        List<ServerAddress> addrs = new ArrayList<ServerAddress>();
         addrs.add( new ServerAddress( "192.168.1.80" , 27017 ) );
         addrs.add( new ServerAddress( "192.168.1.81" , 27017 ) );
         addrs.add( new ServerAddress( "192.168.1.82" , 27017 ) );

        MorphiaObject.mongo = new MongoClient(addrs);

        ReplicaSetStatus status = MorphiaObject.mongo.getReplicaSetStatus();
        List<String> dbs = MorphiaObject.mongo.getDatabaseNames();

        MongoOptions mongOptions = MorphiaObject.mongo.getMongoOptions();
        MorphiaObject.mongo.setWriteConcern(WriteConcern.REPLICAS_SAFE);
        MorphiaObject.mongo.setReadPreference(ReadPreference.secondaryPreferred());
        System.out.println("Read prefrence"+ MorphiaObject.mongo.getReadPreference());
    } catch (UnknownHostException e) {
        e.printStackTrace();

    }
}
  1. 如果我想在所有节点中安全地写入数据,有哪些必要步骤?
  2. 我需要为副本设置的最低配置是什么?
  3. 需要什么验证来检查副本集是关闭还是存活,是否可读,如果应用程序或程序找不到主节点,我们如何管理?
4

0 回答 0