http://www.cnblogs.com/Ewin/archive/2008/11/25/1340752.html
2. Jgroup学习总结
http://blog.sina.com.cn/s/blog_4fe227ba0100jsx5.html
一个小例子:
1.分为客户端和 服务器端! ,先启动服务器端 ,他会启动一个udp(阻塞),绑定在本地的一个随机端口上,并且绑定一个集群
2.在启动客户端发送一个消息,客户端和服务器端都会跟新 集群里面的成员,并且服务器端 收到了集群成员发发送的消息,
3.客户端发送完消息,自动退出,我们可以看到服务器端 有集群成员退出的日志。
4. 可以在启动一个服务器端 只要加入到相同的集群中,我们可以在其他的 服务器端的日志中看到 有新的成员加入,并且客户端发送消息到集群上,所有的成员都成收到!!
服务器端:
- package com.platform.test;
-
- import org.jgroups.JChannel;
- import org.jgroups.Message;
- import org.jgroups.ReceiverAdapter;
- import org.jgroups.View;
-
-
-
-
- public class Receive extends ReceiverAdapter
- {
- JChannel channel;
- String user_name = System.getProperty("user.name", "n/a");
-
- public static void main(String[] args) throws Exception
- {
-
- new Receive().start();
- }
-
- private void start() throws Exception
- {
-
- channel = new JChannel();
-
- channel.setReceiver(this);
-
- channel.connect("ChatCluster");
- }
-
-
- @Override
- public void receive(Message msg)
- {
-
- String receiveData=(String)msg.getObject();
- System.out.println(" 发过来的数据是: " +receiveData);
- }
-
- @Override
- public void viewAccepted(View new_view)
- {
- System.out.println("** view: " + new_view);
- }
- }
客户端:
- package com.platform.test;
- import org.jgroups.ChannelClosedException;
- import org.jgroups.ChannelNotConnectedException;
- import org.jgroups.JChannel;
- import org.jgroups.Message;
-
-
-
-
- public class Send
- {
- JChannel channel;
-
- String user_name=System.getProperty("user.name", "n/a");
- private void start() throws Exception
- {
-
-
-
-
-
-
- channel=new JChannel();
-
- channel.connect("ChatCluster");
-
- sendEvent();
-
- channel.close();
- }
-
-
-
-
- private void sendEvent()
- {
- try
- {
- String str="2222";
-
-
-
-
- Message msg=new Message(null, null, str);
-
- channel.send(msg);
- } catch (ChannelNotConnectedException e)
- {
- e.printStackTrace();
- } catch (ChannelClosedException e)
- {
- e.printStackTrace();
- }
- }
- public static void main(String[] args) throws Exception
- {
-
- new Send().start();
- }
- }
如果这个例子过于简单 我们可以去 下载 group的源码,实验 源码包里的例子
下载地址:
https://github.com/belaban/JGroups
官方demo javacode 包名:
org.jgroups.demos
我们可以实验 下一个 swing 的小例子 ,在两个swing 窗体中同步 内容
运行draw.java 两次,会出现两个 swing 窗体,在其中的一个 按住鼠标左键不放 画图 ,数据会同步到另外一个窗体中,这效果也是运用的jgroup的 组播特性!
还有好多的小例子,我们可以看看 官方的代码是如何写的,把他们运用到 自己的 需求中去!
分享到:
相关推荐
jgroup详细介绍
jgroup代码
Reliable group communication with JGroups 3.x Preface This is the JGroups manual. It provides information about: 1. Installation and configuration 2. Using JGroups (the API) 3. Configuration of the ...
EHCAHCE基于JGROUP的集群配置方案,内含相关配置文件,及配置说明
jgroup笔记.
jroup是一个比较优秀的集群通讯开源软件,本实例展示如何用jgroup进行不同机器之间的通讯
找不到对方在调试的时候发现只要是使用了SWT的类的地方会出现线程错误,于是我想是不是出现了线程同步的问题经询问别人后得知在SWT中使用JGroup应该要使线程同步,应该使用Display类的syncExec(Runnable r)方法于是...
最强大得UUP开源组件,用于底层通讯,以被JBOSS采用
jboss jdbc json jgroup.jar
jgroup配置[收集].pdf
jgroup配置[归类].pdf
jgroup 源码 HIBERNATE 二级缓存 集群
使用JGroup实现分布式数据结构(堆栈和集合) 介绍 [什么是JGroups?]( ) [JGroup入门]( ) JGroups是完全用Java编写的可靠的组通信工具包。 它基于IP多播(也支持TCP),但是有一些特殊功能,例如可靠性和组...
JGroup是当前被广泛使用的可靠组间通信的工具之一。例如OSCache以及JBossTreeCache都是用的是JGroup。 JGroup功能十分强大,通过配置各种参数就可以充分利用它所提供的各项功能。JGroup最大的特点就是支持协议栈的...
jgroups官方帮助文档html格式2.X版本
NULL 博文链接:https://hxy-go.iteye.com/blog/518795
NULL 博文链接:https://wiselyman.iteye.com/blog/2114715
jGroup-OOPProjekt rocc 包含整个项目。 在 rocc 中还包含两个 bat 文件。 “reBuild”文件重建项目,另一个“run”运行项目。 RuinsOfCorrosaCity.zip 是可玩游戏及其脚本的包。 文档包含 RAD 和 SDD 会议包含...