您的位置:首页 > 编程语言 > Java开发

maven下搭建springMVC+mybatis+mysql+zookeeper+dubbo

2017-09-30 16:44 441 查看
我这边是从没有maven开始搭建的,也顺便说下maven吧
1.maven本地仓库搭建
   取官网下载maven安装包:http://www.apache.org/dyn/closer.cgi/maven/binaries/apache-maven-3.3.9-bin.tar.gz
2.下载后解压,放到一个位置后,配置环境变量
    a.新增M2_HOME,内容如下,我的放在E盘
E:\webServices\apache-maven-3.3.9



    b.Path的内容页需要编辑
    在最后面新增;%M2_HOME%\bin    (注意与前面的一定要以“;”隔开)
    


3.在命令框输入mvn-version如果可以看到maven的版本信息,你们你就配置好了

 


4.myeclipse/eclipse配置maven
    a.首先是maven指定jdk版本(myeclipse),eclipse mars是没有这个配置的,其他版本不知道



    b.installations配置



c.userSetting



  到这里开发工具的maven插件就配置完成了。注意,eclipse也是配置这几项
另外说明下maven下载嘉瑞宝路径的配置,在apache-maven-3.3.9\conf\settings.xml里面(54行开始)配置
 <localRepository>E:\MavenRepository</localRepository>
这样以后jar就会下载到E:\MavenRepository这个目录下
5.新建3个maven项目,其中2个web类型带框架,1个最普通的项目不带框架
    其实这2个web框架跟普通的框架没什么区别,其实就是3个jar包,一个配置文件的引入,我也不想写具体的搭建了,就说下我这3个项目的角色。
    dubboMavenAPI:对外暴露的jar包,dubbo的接口都在这个里面,里面还有实体对象或出参数对象(出参对象是实体的子集)
    

    dubboMavenServicer:(服务提供方)对外暴露接口包的具体实现,这个项目需要引入zookeeper、dubbo、zkClient的jar。另外一个对外暴露接口的配置文件:dubbo-provider.xml,这个文件注意需要spring加载,直接在spring的配置文件里用include就可以,这边都是基于注解的。项目里面配置文件注释写的狠详细,自己看。

    confManager:(服务消费方),这个项目跟服务提供方一样,就是加载的dubbo的配置文件:dubbo-consumer.xml,也需要spring加载,后面基于注解使用,里面的配置与服务提供方的区别自己比较体会,注释狠好理解。

上面是基本的框架搭建,后面涉及的服务长连接,事务是注解的,优化需要自己摸索。
6.现在关键的就是dubbo的注册配置中心,也就是后面可以看服务提供方状态和消费状态,以及负载均衡的管理中心搭建了。
第一步:在Linux上安装Zookeeper
       Zookeeper作为Dubbo服务的注册中心,Dubbo原先基于数据库的注册中心,没采用Zookeeper,Zookeeper一个分布式的服务框架,是树型的目录服务的数据存储,能做到集群管理数据 ,这里能很好的作为Dubbo服务的注册中心,Dubbo能与Zookeeper做到集群部署,当提供者出现断电等异常停机时,Zookeeper注册中心能自动删除提供者信息,当提供者重启时,能自动恢复注册数据,以及订阅请求。我们先在linux上安装Zookeeper,我们安装最简单的单点,集群比较麻烦。
    (1)下载Zookeeper-3.4.6.tar.gz  地址http://www.apache.org/dist/zookeeper/
    (2)我们放到Linux下的一个文件夹,然后解压: 
     #tar zxvf zookeeper-3.4.6.tar.gz
  (3)然后在对应的zookeeper-3.4.6/conf 下有一个文件zoo_sample.cfg的这个文件里面配置了监听客户端连接的端口等一些信息,Zookeeper 在启动时会找zoo.cfg这个文件作为默认配置文件,所以我们复制一个名称为zoo.cfg的文件,如图所示:
     


   我们查看一下这个文件的里面的一些配置信息,如图所示:
    


  
说明:
 clientPort:监听客户端连接的端口。
 tickTime:基本事件单元,以毫秒为单位。它用来控制心跳和超时,默认情况下最小的会话超时时间为两倍的 tickTime。
 我们可以对配置文件的端口等或者进行高级配置和集群配置例如:maxClientCnxns:限制连接到 ZooKeeper 的客户端的数量等
 (4)启动Zookeeper 的服务,如图所示:
    


 到这边Zookeeper的安装和配置完成
  第二步:配置dubbo-admin的管理页面,方便我们管理页面
    (1)下载dubbo-admin-2.4.1.war包,在Linux的tomcat部署,先把dubbo-admin-2.4.1放在tomcat的webapps/ROOT下,然后进行解压:
       #jar -xvf dubbo-admin-2.4.1.war
    (2)然后到webapps/ROOT/WEB-INF下,有一个dubbo.properties文件,里面指向Zookeeper ,使用的是Zookeeper 的注册中心,如图所示:
        


   (3)然后启动tomcat服务,用户名和密码:root,并访问服务,显示登陆页面,说明dubbo-admin部署成功,如图所示:
      


7.将那2个web项目部署起来后,(分别部署在2个tomcat,最好是2台不同ip的机器,看的明显些)

8.如果以上都没有问题了,那么你可以在我提供的框架下编码了,或者自己搭建自己的框架,参考我的配置文件。
翻过高山了,沿途的景色可以回去慢慢欣赏。。。。
 


最后补充说的就是dubbo2.5.3与spring高版本兼容问题,注意看maven里引入dubbo的jar时与其他jar的区别,我想你就会懂了,这个坑,坑的我曾一度想放弃直接搭dubbox2.8.4版本,最后因为jdk的问题还是没有下山硬着头皮继续翻越。
 
 
 
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: