Eclipse ZooKeeper 插件使用

ZooKeeper 插件安装

插件地址:ZooKeeperEclipse  http://www.massedynamic.org/eclipse/updates/

安装ZooKeeperEclipse插件步骤如下:

Step 1. 在 Eclipse 菜单打开Help -> Install New Software…
Step 2. 添加 url http://www.massedynamic.org/eclipse/updates/。
Step 3. 选择插件并安装运行
Step 4. 在 Eclipse 菜单打开Window->Show View->Other…->ZooKeeper 3.2.2。
Step 5. 连接ZK 输入正在运行的ZK server 地址和端口

连接成功后就就可以在Eclipse里查看ZK Server里的节点信息。

ZooKeeper插件配置



测试开发环境

package com.demo;

import java.io.IOException;

import org.apache.zookeeper.CreateMode;
import org.apache.zookeeper.KeeperException;
import org.apache.zookeeper.WatchedEvent;
import org.apache.zookeeper.Watcher;
import org.apache.zookeeper.ZooDefs;
import org.apache.zookeeper.ZooKeeper;
import org.apache.zookeeper.data.Stat;

public class ZooKeeperTest {

	public static void main(String[] args) throws IOException, KeeperException, InterruptedException {
		ZooKeeper zk = new ZooKeeper("127.0.0.1:2181", 30000, new TestWatcher());
//		String node = "/zookeeper/quota";
		String node = "/demo";
		Stat stat = zk.exists(node, false);
		
		if(null==stat) {
			//创建节点
			String createResult = zk.create(node, "test".getBytes(), ZooDefs.Ids.CREATOR_ALL_ACL, CreateMode.PERSISTENT);
			System.out.println(createResult);
		}
		byte[] data = zk.getData(node, false, stat);
		System.out.println(new String(data));
		zk.close();
		
	}
	
}

class TestWatcher implements Watcher{

	@Override
	public void process(WatchedEvent event) {
		// TODO Auto-generated method stub
		System.out.println("*****************************");
		System.out.println("path:  " + event.getPath());
		System.out.println("type:  " + event.getType());
		System.out.println("state:  " + event.getState());
		System.out.println("*****************************");
	}
	
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Zookeeper可以用于协调分布式系统中的进程,Jetty是Java实现的Web服务器和Servlet容器,通过配置Jetty的Zookeeper插件,可以实现Jetty的集群管理,自动化部署和运维。以下是配置步骤: 1. 添加依赖:在pom.xml文件中添加如下依赖: ``` <dependency> <groupId>org.eclipse.jetty.contrib</groupId> <artifactId>jetty-zookeeper</artifactId> <version>${jetty.version}</version> </dependency> ``` 2. 配置ZooKeeper: 在Jetty的配置文件中添加以下配置: ``` <Configure id="Server" class="org.eclipse.jetty.server.Server"> <New id="zk" class="org.eclipse.jetty.zookeeper.ZooKeeperService"> <Set name="connectString">localhost:2181</Set> <Set name="sessionTimeout">2000</Set> <Set name="basePath">/jetty</Set> </New> </Configure> ``` 其中,connectString为ZooKeeper的连接地址,sessionTimeout为连接超时时间,basePath为Jetty在ZooKeeper中存储的节点路径。 3. 配置Jetty: 在Jetty的配置文件中添加以下配置: ``` <Call name="addBean"> <Arg> <New class="org.eclipse.jetty.zookeeper.server.ZooKeeperServerFactory"> <Set name="zkService"><Ref id="zk"/></Set> <Set name="tickTime">2000</Set> <Set name="initLimit">10</Set> <Set name="syncLimit">5</Set> <Set name="dataDir">/path/to/zookeeper/data</Set> <Set name="clientPort">2181</Set> </New> </Arg> </Call> <Call name="addConnector"> <Arg> <New class="org.eclipse.jetty.server.ServerConnector"> <Arg name="server"><Ref id="Server" /></Arg> <Arg name="factories"> <Array type="org.eclipse.jetty.server.ConnectionFactory"> <Item> <New class="org.eclipse.jetty.server.HttpConnectionFactory"> <Arg name="config"><Ref id="sslContextFactory"/></Arg> </New> </Item> </Array> </Arg> <Set name="host"><Property name="jetty.host" /></Set> <Set name="port"><Property name="jetty.port" default="8080"/></Set> <Set name="idleTimeout">30000</Set> </New> </Arg> </Call> <Call name="addLifeCycleListener"> <Arg> <New class="org.eclipse.jetty.zookeeper.server.ZooKeeperClusterListener"> <Set name="zkService"><Ref id="zk"/></Set> <Set name="serverUrl">http://localhost:8080/</Set> </New> </Arg> </Call> <Call name="start"/> ``` 其中,ZooKeeperServerFactory配置了ZooKeeper服务器的参数,HttpConnectionFactory配置了Jetty的Http连接工厂,ZooKeeperClusterListener监听了Jetty集群状态的变化,并将状态信息存储在ZooKeeper中。 4. 启动Jetty: 在控制台中运行以下命令启动Jetty服务器: ``` java -jar jetty-runner.jar --config jetty.xml myapp.war ``` 以上就是Zookeeper配置Jetty的基本步骤。如果还有其他问题或者需要更详细的介绍,请随时提出。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值