DUBBO-ZOOKEEPER-SPRING-MAVEN-TOMCAT集群配置~
来源:互联网 发布:linux pipe 编辑:程序博客网 时间:2024/05/17 16:54
应用:
随着网站业务架构越来越庞大,数据交互会十分频繁。“服务治理”,这个概念就出来了.目前比较火的,服务化框架,DUBBO,SPRING CLOUD.最近接触了下DUBBO,略有收获.DUBBBO的介绍网上还是蛮多的,在我通俗的认知中,类似于一个新兵报到处,它负责签收新兵,分配新兵,新兵身体测试,新兵分配情况记录。而DUBBO最推荐的注册中心ZOOKEEPER,就是报到处的记录本本,还是实时的那种,里面记录了新兵(服务)来自哪个地区(IP),名字(服务名称)叫啥~当然ZOOKEEPER的功能不仅仅如此。
ZOOKEEPER集群:
下载解压
进入正题,首先下载个ZOOKEEPER,我下的是3.4.6版本解压之~#tar zxvf zookeeper-3.4.6.tar.gz再复制成三份 完成后你的目录中应该是:root@ubuntu:/home/ubuntu/share# lszookeeper-3.4.6-node1 zookeeper-3.4.6-node2zookeeper-3.4.6-node3
配置ZOO.CFG
conf下新建zoo.cfg 进行配置:tickTime=2000initLimit=10syncLimit=5#这个目录需要新建 需要存放myid(1.vim myid #2.存入数字1.2.3 其跟server序号对应)dataDir=/home/ubuntu/share/zookeeper-3.4.6-node1/dataclientPort=2181server.1=127.0.0.1:2887:3887server.2=127.0.0.1:2888:3888server.3=127.0.0.1:2889:3889
启动 ZK集群
root@ubuntu:/home/ubuntu/share/zookeeper-3.4.6-node1/bin# ./zkServer.sh startroot@ubuntu:/home/ubuntu/share/zookeeper-3.4.6-node2/bin# ./zkServer.sh startroot@ubuntu:/home/ubuntu/share/zookeeper-3.4.6-node3/bin# ./zkServer.sh start查看是否成功启动:root@ubuntu:/home/ubuntu/share/zookeeper-3.4.6-node1/bin# ./zkServer.sh statusroot@ubuntu:/home/ubuntu/share/zookeeper-3.4.6-node2/bin# ./zkServer.sh statusroot@ubuntu:/home/ubuntu/share/zookeeper-3.4.6-node3/bin# ./zkServer.sh status
DUBBO-ADMIN配置:
接下来配置DUBBO的后台:
1.首先https://github.com/alibaba/dubbo上下载dubbo源码
2.如果你的JDK不是1.8,该步骤可以跳过
参考http://blog.csdn.net/blue_dd/article/details/51298438(亲测可用)
3.解压至服务器TOMCAT WEBAPPS-ROOT下(先清空ROOT目录)
4.修改其WEB-INF下的 dubbo.properties文件:
5.启动TOMCAT~ 即可在你TOMCAT上查到咯~
DUBBO项目配置
当然这个时候是啥服务都没有的~
接下来引入DUBBO三层思想:API PROVIDER CUSTOMER
API项目
十分简单就是一个提供接口的 不提供其实现类的项目,一般会将其打成JAR包导入至PROVIDER CUSTOMER项目中 这里就不详细介绍。此处我将其打成JAR包并传至本地MAVEN仓库mvn install:install-file -Dfile=c:\dubbo_api_test.jar -DgroupId=com.panchen -DartifactId=dubbo_api_test -Dversion=0.1 -Dpackaging=jar
PROVIDER
顾名思义提供服务~其实现API项目的接口~ 贴下主要配置~applicationContext-dubbo.xml:
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dubbo="http://code.alibabatech.com/schema/dubbo" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd"> <!-- 提供方应用信息,用于计算依赖关系 --> <dubbo:application name="test_provider" /> <!-- 使用zookeeper注册中心暴露服务地址 --> <dubbo:registry address="zookeeper://192.168.10.63:2181?backup=192.168.10.63:2182,192.168.10.63:2183" check="false" subscribe="false" register=""/> <!-- <dubbo:registry address="multicast://224.5.6.7:1234" /> --> <!-- 用dubbo协议在20880端口暴露服务 --> <dubbo:protocol name="dubbo" port="20881" /> <!-- <dubbo:monitor protocol="registry"></dubbo:monitor> --> <!-- 具体的实现bean --> <bean id="testService" class="com.panchen.service.impl.TestServiceImpl" /> <!-- 声明需要暴露的服务接口 --> <dubbo:service interface="com.panchen.service.TestService" ref="testService" /></beans>
pom.xml 除了SPRING的依赖外添加:
<!--API接口依赖 --> <dependency> <groupId>com.panchen</groupId> <artifactId>dubbo_api_test</artifactId> <version>0.1</version> </dependency> <dependency> <groupId>com.101tec</groupId> <artifactId>zkclient</artifactId> <version>0.4</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>dubbo</artifactId> <version>2.5.3</version> <exclusions> <exclusion> <groupId>org.springframework</groupId> <artifactId>spring</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookeeper</artifactId> <version>3.4.6</version> </dependency>
CUSTOMER
消费端~即调用服务端大致流程:新建MAVEN 配置文件 CONTROLLER贴下主要配置:applicationContext-dubbo.xml:
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dubbo="http://code.alibabatech.com/schema/dubbo" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd"> <!-- 提供方应用信息,用于计算依赖关系 --> <dubbo:application name="test_customer" /> <!-- 使用zookeeper注册中心暴露服务地址 --> <dubbo:registry address="zookeeper://192.168.10.63?backup=192.168.10.63:2182,192.168.10.63:2183"/> <!-- 要引用的服务 --> <dubbo:reference interface="com.panchen.service.TestService" id="testService"></dubbo:reference> </beans>
再如上配置完 在DUBBO-ADMIN上已经捕获到了:
那是否真的可以了么? 写了个TEST
package com.panchen.test;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import org.springframework.test.context.web.WebAppConfiguration;import com.panchen.test.controller.TestController;/** * 测试 * @author pc * */@WebAppConfigurationpublic class Test { public static void main(String[] args) { ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml","applicationContext-dubbo.xml"); TestController testController=(TestController) ac.getBean("testController"); testController.hello(); }}
在控制台输出 , 显然是成功了!
总结
1.DUBBO-ADMIN上还有很多功能可以探究
2.ZOOKEEPER的负载均衡尚未体现
3.综上操作,实际开发中尚显冗余
4.DUBBO好久没更新了~之前提过的SPRING CLOUD由SPRING SOURCE撑腰,并且SPRING BOOT越来越火,所以你懂的~
阅读全文
2 0
- DUBBO-ZOOKEEPER-SPRING-MAVEN-TOMCAT集群配置~
- Maven+spring +dubbo+zookeeper
- DUBBO服务管理配置Zookeeper集群服务
- (转载)dubbo+zookeeper集群配置
- dubbo 入门,与zookeeper maven spring整合
- solrCloud+tomcat+zookeeper集群配置
- solrCloud+tomcat+zookeeper集群配置
- solrCloud+tomcat+zookeeper集群配置
- solrCloud+tomcat+zookeeper集群配置
- Dubbo的Zookeeper单机配置和Zookeeper集群配置
- zookeeper+dubbo+dubbo管理集群的简要配置[单机]
- zookeeper+dubbo+dubbo管理集群的简要配置[单机]
- zookeeper+dubbo+dubbo管理集群的简要配置[单机]
- zookeeper dubbo 集群
- dubbo+zookeeper集群
- dubbo+zookeeper集群
- dubbo、zookeeper集群搭建
- Dubbo+Zookeeper+Spring mvc+Nginx 集群负载均衡 详细demo
- Java的异常处理
- 职业规划
- Android Material Design动画 Reveal Effect | 揭示效果
- 【动态规划15】hdu3057 Print Article(斜率优化入门)
- facade模式
- DUBBO-ZOOKEEPER-SPRING-MAVEN-TOMCAT集群配置~
- 手机端页面自适应解决方案—rem布局--小记
- Springboot开发(spring+mybatis+druid)
- IO 异常:The Network Adapter could not establish the connection
- Okhttp使用和源码分析三(OkHttp源码分析)
- 两种方式实现Android侧滑菜单
- 集成springboot-starter-security
- Android案例学习——名片注册
- 手机端页面自适应解决方案—rem布局进阶版(附源码示例)