欢迎来到天天文库
浏览记录
ID:17443115
大小:458.08 KB
页数:21页
时间:2018-08-31
《java实战操作mongodb集群》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、本文的原文地址是:http://www.sclzzw.gov.cn/image/index3.htmlSpring提供了MongoDB操作的工具:MongoTemplate,使得在Spring环境下对MongoDB的操作更为便利,本章我们就来学一下如何用MongoTemplate对MongoDB的集群环境(副本集)做操作;实战环境选用Docker本次实战,Web工程和MongoDB都运行在Docker环境的容器中,这么做是为了快速搭建环境,不要在环境上花费太多时间,更聚焦Java开发;Java源码本次实战的java工程的源码我已经上传到githu
2、b了,地址是:git@github.com:zq2599/blog_demos.git,里面有多个工程,本次实战的工程是mongodbreplicationdemo,如下图红框所示: 环境规划本次实战的环境是一个Tomcatserver和Mongodb集群(副本集),我们将在Docker下部署这些server,所以一共要运行以下四个容器:容器名ip备注m0172.18.0.2MongoDBPrimarym1172.18.0.3MongoDBSecondary1m2172.18.0.4MongoDBSecondary2tomcat001172.18
3、.0.5Tomcatserver相互关系如下图: 关于Tomcatserver环境本次实战我们用Maven创建一个javaweb工程,然后在线部署到Docker上去,Tomcat的镜像请用bolingcavalry/online_deploy_tomcat:0.0.1,关于在线部署的详情请参照文章《实战docker,编写Dockerfile定制tomcat镜像,实现web应用在线部署》关于MongoDB集群环境搭建MongoDB副本集的集群环境不是本章的重点,这篇文章详细的记录了如何搭建集群环境,您可以作为实战参考:《Docker下,实战mong
4、odb副本集(Replication)》docker-compose.yml配置由于要启动四个容器:Mongodb集群和TomcatServer,所以用docker-compose批量管理比较方便,docker-compose.yml内容如下:version:'2'services:m0:image:bolingcavalry/ubuntu16-mongodb349:0.0.1container_name:m0command:/bin/sh-c'mongod--replSetreplset0'restart:alwaysm1:image:boli
5、ngcavalry/ubuntu16-mongodb349:0.0.1container_name:m1depends_on:-m0command:/bin/sh-c'mongod--replSetreplset0'restart:alwaysm2:image:bolingcavalry/ubuntu16-mongodb349:0.0.1container_name:m2depends_on:-m1command:/bin/sh-c'mongod--replSetreplset0'restart:alwaystomcat001:image:bol
6、ingcavalry/online_deploy_tomcat:0.0.1container_name:tomcat001ports:-"8080:8080"links:-m0:mongodb0-m1:mongodb1-m2:mongodb2restart:always·1·2·3·4·5·6·7·8·9·10·11·12·13·14·15·16·17·18·19·20·21·22·23·24·25·26·27·28·29·30·31如上述yml脚本所示,m0、m1、m2这三个容器组成了副本集集群,tomcat001容器配置的link属性中包含了
7、其他三个容器,所以原本需要直接使用IP地址的地方都可以用mongodb0、mongodb1、mongodb2来代替了;启动容器,把集群环境配置好在docker-compose.yml文件所在目录下,执行命令docker-composeup-d批量启动所有容器,再进入m0容器把集群环境配置好,配置方法非常简单,请参考《Docker下,实战mongodb副本集(Replication)》终于,准备工作已经完成,咱们可以开始编码了;依赖库在我们的pom.xml中,除了常规的spring依赖,还要加入本次用到的MongoDB操作的依赖:8、cy>org.springframework.dataspring-dat
8、cy>org.springframework.dataspring-dat
此文档下载收益归作者所有