MongoDB集群及客户端读写分离实现

来源:互联网 发布:电脑自动分区软件 编辑:程序博客网 时间:2024/06/05 19:12
部署MongoDB集群服务
./mongod --fork --port=27018 --dbpath=../db_log/db0/ --logpath=../logs/db0.log --logappend --replSet log./mongod --fork --port=27019 --dbpath=../db_log/db1/ --logpath=../logs/db1.log --logappend --replSet logconfig={_id : 'log',members : [{_id : 0, host : '172.16.3.42:27018', priority : 1},{_id : 1, host : '172.16.3.42:27019'}]}rs.initiate(config)


使用spring配置文件注入Mongo对象
<mongo:mongo id="mongo" replica-set="172.16.3.42:27018"> <mongo:options auto-connect-retry="true" slave-ok="true"/></mongo:mongo>

创建MongoTemplate对象
// 如果不用List的话,是不会在从节点进行读取的Mongo mongo = new Mongo(Arrays.asList(new ServerAddress(server.getLog4mongoIp(), server.getLog4mongoPort())));mongo.setReadPreference(ReadPreference.secondaryPreferred());MongoDbFactory factory = new SimpleMongoDbFactory(mongo, server.getLog4mongoDbName());MongoTemplate mongoTemplate = new MongoTemplate(factory);return mongoTemplate;


0 0
原创粉丝点击