Java集群优化——dubbo+zookeeper构建
互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,Dubbo是一个分布式服务框架,在这种情况下诞生的。现在核心业务抽取出来,作为独立的服务,使前端应用能更快速和稳定的响应。
下面我将讲解dubbo框架的基础配置。最后会放上demo下载链接。
本文旨在dubbo demo,会忽略一些用法,
对一些具体的api配置可以参考dubbo官方:http://dubbo.io/ 的用户指南,整体的搭建过程不算复杂。
Provider: 暴露服务的服务提供方。
Consumer: 调用远程服务的服务消费方。
Registry: 服务注册与发现的注册中心。
dubbo 简单的讲就是把不同服务的接口对外提供给注册中心,注册中心在提供给调用者。
所以一个可运行的demo就需要一个注册中心,一个生产者,一个消费者。
生产者和消费者这里分别使用java服务实现。注册中心可以是多种多样,这是选用官方推荐的zookeeper.最好使用zk。
1.zookeeper的安装和配置
下载后解压到自己想要的位置,这个东西是免安装的。这时我们安装好了。下面是配置一下
1.把conf目录下的zoo_sample.cfg改名成zoo.cfg,这里我是先备份了zoo_sample.cfg再改的名。
把zoo.cfg里面的内容改成:
# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes.
dataDir=D:\\zookeeper-3.4.7\\data
dataLogDir=D:\\zookeeper-3.4.7\\log
# the port at which the clients will connect
clientPort=2181
# the maximum number of client connections.
# increase this if you need to handle more clients
#maxClientCnxns=60
#
# Be sure to read the maintenance section of the
# administrator guide before turning on autopurge.
#
# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
#
# The number of snapshots to retain in dataDir
#autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#autopurge.purgeInterval=1
大家可以直接copy,一些带有“#”号的配置项也留着,以后方便扩展。
拷贝成功后保存即可。
我们再配置一下这个环境变量就可以运行zookeeper了。(本文基于Windows已经配置过JAVA_HOME并且配置正确)
新增环境变量:ZOOKEEPER_HOME  
变量值:D:\zookeeper-3.4.7 (变量值要根据你下的zookeeper包的放置位置)
再在系统变量path最后添加: ;%ZOOKEEPER_HOME%/bin; %ZOOKEEPER_HOME%/conf 并保存就可以了
这个时候就可以验证我们到底有没有安装成功了
点击bin目录下的zkServer.cmd 这时候出现下面的提示就说明配置成功了。
注意 :这个窗口不要关闭!让注册中心服务一直运行。
2.生产者和消费者项目的运行
下面大家可以去下载我的demo并导入eclipse,下载地址在文章最后
导入两个工程后 先修改c_provider项目的applicationContext.xml文件,这个文件有三个红叉的话并不影响运行,
可以去下载dubbo.xsd文件(这个文件在我的demo包中有提供,demo包下载地址在随后有提供),放到你自己放置的位置,然后Window->Preferences->XML->XML Catalog 然后add
Location 是你的dubbo.xsd文件地址
保存后 Project->clean 就行了
这个时候我们再来修改applicationContext.xml,打开该文件
    
<dubbo:registry address="zookeeper://192.168.62.56:2181" />
只要把这个修改成192.168.62.56你自己的ip就行了
自己的ip可以这样查看 windows 然后输入cmd
就是那个ipV4地址
后面的那个端口号就是 那个coo.cfg里面的clientPort=2181这一项配置
然后运行一下 Provider.java文件就行了
注意:运行后不要关闭!
 
打印这个出来就行说明正确了.
这个时候可以看一下zookeeper的客户端的日志。已经可以监控到这些服务了。
这个时候把 consumer的applicationContext.xml文件里面的ip做同样修改
运行:Consumer.java 可以看到
 
至此,全部配置成功,dubbo的demo已经完成。
行文匆忙,不足之处希望大家在文章下讨论、指正

windows下 zookeeper dubbo 安装+配置+demo 详细图文教程的更多相关文章

  1. Mysql在windows下的免安装配置步骤和重新安装的步骤

    windows下mysql免安装配置 1. 下载mysql免安装压缩包 下载mysql-5.6.22-winx64.zip 解压到本地D:\mysql-5.6.22-winx64 2. 修改配置文件 ...

  2. zookeeper集群环境搭建详细图文教程

    zookeeper集群环境搭建详细图文教程 zhoubang @ 2018-01-02 [文档大纲] 友情介绍 软件环境 注意点 环境安装 1. 新建用于存储安装包以及软件安装的目录 2. 下载安装z ...

  3. 微软源代码管理工具TFS2013安装与使用详细图文教程(Vs2013)

    这篇文章联合软件小编主要介绍了微软源代码管理工具TFS2013安装与使用图文教程,本文详细的给出了TFS2013的安装配置过程.使用教程,需要的朋友可以参考下 最近公司新开发一个项目要用微软的TFS2 ...

  4. [转] 微软源代码管理工具TFS2013安装与使用详细图文教程(Vs2013)

    这篇文章联合软件小编主要介绍了微软源代码管理工具TFS2013安装与使用图文教程,本文详细的给出了TFS2013的安装配置过程.使用教程,需要的朋友可以参考下 最近公司新开发一个项目要用微软的TFS2 ...

  5. windows下Redis的安装配置以及注意事项

    一.下载windows版本的Redis 去官网找了很久,发现原来在官网上可以下载的windows版本的,现在官网以及没有下载地址,只能在github上下载,官网只提供linux版本的下载 官网下载地址 ...

  6. Redis(三):windows下Redis的安装配置以及注意事项

    一.下载windows版本的Redis 去官网找了很久,发现原来在官网上可以下载的windows版本的,现在官网以及没有下载地址,只能在github上下载,官网只提供linux版本的下载 官网下载地址 ...

  7. windows下maven的安装配置

    什么是maven Maven是基于POM(工程对象模型),通过一小段描述来对项目的代码.报告.文件进管理的工具. Maven是一个跨平台的项目管理工具,它是使用java开发的,它要依赖于jdk1.6及 ...

  8. vm12 安装ubuntu15.10详细图文教程 虚拟机安装ubuntu安装 ubuntu更新软件 ubuntu一直卡在下载语言怎么办?

    1,准备工作-ubuntu下载 ubuntu官网下载 如何官网下载ubuntu http://www.ubuntu.com/download/ 2,打开虚拟机 虚拟机安装ubuntu15.10 虚拟机 ...

  9. windows下redis的安装配置和php扩展使用phpredis

    1. 首先安装先下载redis数据库     下载地址: http://code.google.com/p/servicestack/wiki/RedisWindowsDownload 目前是2.02 ...

随机推荐

  1. resin web项目的 编码问题

    问题描述: 服务器迁移,迁移以后Linux系统编码由 UTF-8 变成了GBK !!! 导致在resin 中运行java web项目,调用 http 接口,解析http 接口的返回内容 如:xml 时 ...

  2. poj1308+HOJ1325,判断是否为树

    POJ 应该是判断是否为简单无环连通图,用并查集直接秒杀即可,而HOJ的是有向树,还需判断所有点的入度必需小于2,用一个类似hash[]数组判断一下即可, ////判断树之一:入度<=1:三:点 ...

  3. 由八数码问题引入。对BFS有更深考虑

    12号到今天共研究八数码问题poj1077,首先用的是普通BFS,遇到很多问题,开始用一个二级指针作为结构成员,知道了二级指针与二维数值名的不同!http://write.blog.csdn.net/ ...

  4. hdu1072(bfs)

    #include<iostream> #include<queue> #include<cstring> using namespace std; int a[10 ...

  5. 洛谷——P1047 校门外的树

    P1047 校门外的树 题目描述 某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米.我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置:数轴上的每个整数点,即0 ...

  6. [Bzoj4722]由乃(线段树好题)(倍增处理模数小快速幂)

    4722: 由乃 Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 360  Solved: 131[Submit][Status][Discuss] D ...

  7. webpack体积优化篇二(GZ压缩)

    这里我列举几个常用的能够用于减少包体大小的插件,我们可以根据项目需求选择性的使用: compression-webpack-plugin :该插件能够将资源文件压缩为.gz文件,并且根据客户端的需求按 ...

  8. Teamviewer ubuntu 提示 TeamViewer Daemon is not running

    http://blog.csdn.net/laohuang1122/article/details/12657343 Ubunut 12.04下面安装了Teamviewer,刚安装完启动是没有问题的, ...

  9. 实例 tar备份以日期命名

    tar备份以日期命名****************************************************************************************#v ...

  10. 微信小程序 项目实战(三)list 列表页 及 item 详情页

    1.项目结构 2.list 列表页 (1)数据(逻辑) list.js // pages/list/list.js Page({ /** * 页面的初始数据 */ data: { title: '加载 ...