bbossgroups 2.0-RC中对jgroups已经升级到Jgroups 2.10.0版本,因此对aop中基于JGroups的rpc也做了相应的调整,本文详细讲解新的使用方法:
1.配置文件目录调整:
jgroups本身协议配置文件和存放目录(tcp,udp)
/bbossaop/resources/org/frameworkset/spi/jgroups/jgroups-tcp.xml
/bbossaop/resources/org/frameworkset/spi/jgroups/jgroups-udp.xml
manager-rpc-service.xml中针对JGroups的相应配置为:
<!--
jgroups集群协议配置
-->
<property name="cluster_name" value="Cluster"/>
<property name="cluster_protocol" value="udp"/>
<property name="cluster_protocol.tcp.configfile" value="org/frameworkset/spi/jgroups/jgroups-tcp.xml"/>
<property name="cluster_protocol.udp.configfile" value="org/frameworkset/spi/jgroups/jgroups-udp.xml"/>
2.JGroups协议单独启动方法没有改变,还是以下的方法:
RPCHelper.getRPCHelper().startJGroupServer();
基于bboss开发的平台中启动jgroups的方法,manager-rpc-service.xml中的相关项做如下设置即可:
<property name="rpc.default.protocol"
value="jgroup"/>
<property name="rpc.startup.protocols"
value="jgroup"/>
<property name="rpc.security" >
<map>
<property name="rpc.login.module" enable="false" class="org.frameworkset.spi.security.SimpleLoginModule"/>
<property name="rpc.authority.module" enable="false" class="org.frameworkset.spi.security.SimpleAuthorityModule"/>
<property name="data.encrypt.module" enable="false" class="org.frameworkset.spi.security.SimpleEncryptModule"/>
</map>
</property>
每个节点应用的udp协议文件jgroups-udp.xml中的组播地址设置成一样的即可:
mcast_addr="232.10.10.10"
地址值可以根据需要进行修改。
3.客服端相关接口及使用方法
获取集群节点地址集合方法:
Vector<Address> addresses = JGroupHelper.getJGroupHelper().getAppservers();
获取远程服务组件方法:
* 单播
Address address_ = addresses.get(0);
RPCTestInf testInf = (RPCTestInf)ApplicationContext.getApplicationContext().getBeanObject("(jgroup::" + address_ + ")/rpc.test");
调用远程方法:
Object value = testInf.getCount();
* 多播
Address address_0 = addresses.get(0);
Address address_1 = addresses.get(1);
RPCTestInf testInf = (RPCTestInf)BaseSPIManager.getBeanObject("(jgroup::"+address_0+";"+address_0+")/rpc.test");
调用远程方法:
Object value = testInf.getCount();
获取address_0的结果:
Object ret_0 = BaseSPIManager.getRPCResult(address_0.toString(), value ,Target.BROADCAST_TYPE_JRGOUP);
获取address_1的结果:
Object ret_1 = BaseSPIManager.getRPCResult("address_1.toString(), ret,Target.BROADCAST_TYPE_JRGOUP);
* 组播
RPCTestInf testInf = (RPCTestInf)BaseSPIManager.getBeanObject("(jgroup::all)/rpc.test");
调用远程方法:
Object value = testInf.getCount();
遍历所有结果:
int size = BaseSPIManager.getRPCResultSize(ret);
for(int j = 0; j < size; j ++)
{
Object ret = BaseSPIManager.getRPCResult(j, ret);
System.out.println("ret:" + j + " = "+ret_1186);
}
分享到:
相关推荐
bboss MVC中的控制器是业务逻辑和视图之间的桥梁,通常由BeanNameUrlHandlerMapping来处理URL和控制器的映射。配置中,`alwaysUseFullPath`属性确保URL始终使用完整路径,而`handlerMap`引用了处理URL和控制器映射的...
该项目是一款基于Java和Shell语言的bboss session framework设计源码,专注于实现跨域集群节点之间的会话共享,并具备良好的会话监控和数据统计功能。该框架包含222个文件,包括164个Java源文件、14个XML配置文件、6...
标题 "bboss mvc 通过jsonp实现跨站跨域远程访问" 涉及到的主要知识点是关于Web开发中的跨域通信技术,特别是利用JSONP(JSON with Padding)来解决AJAX请求时遇到的同源策略限制。在互联网应用中,浏览器的安全策略...
4. **国际化与主题管理**:Bbossgroups支持多语言环境,通过MessageResource实现国际化消息资源管理,而Theme机制则允许用户自定义界面主题,满足不同用户的个性化需求。 5. **RESTful架构**:Bboss支持RESTful风格...
4. **集群与负载均衡**:框架支持轻松构建集群,通过负载均衡策略分散服务器压力,提高服务的可用性和响应速度。 5. **安全控制**:bbossgroups 提供了丰富的安全控制机制,包括用户认证、授权和会话管理,保障系统...
在Java开发中,bbossgroups 3.1框架提供了一个名为SQLExecutor的组件,用于简化数据库操作。这个组件提供了一种高效的批处理和单条SQL执行的方式,它基于Apache License 2.0开源,允许开发者在遵守相应条款的情况下...
- **远程调用**:轻松实现跨服务调用,降低系统耦合度。 - **高性能通信**:采用高效的序列化协议和传输层协议,提升通信速度。 - **服务治理**:提供服务注册、发现、负载均衡等功能,便于管理微服务架构。 #### ...
在企业J2EE项目开发中,bbossgroups框架扮演着重要角色,它不仅包含了AOP/IoC、MVC、Persistent、Taglib等核心组件,还集成了分布式RPC服务、分布式事件框架,为开发者提供了全方位的开发支持。 ### 核心组件 - **...
BBoss框架的最新版本bbossgroups-bboss-389b83a可能包含了对原有功能的优化、新特性的添加以及bug修复。开发者在使用时,应详细阅读官方文档,了解其具体变更,以便更好地利用这一强大的工具进行企业级应用的开发。 ...
12. bboss:bbossgroups是首个集成AOP、MVC、持久层、JSP标签库、分布式RPC服务和序列化组件的JavaEE企业级开发框架。 13. BeeFramework:BeeFramework是iOS平台的快速开发框架,特点包括易学易用、组件丰富,提供...
它运行并访问像mybatis这样的elasticsearch来关联数据库。环境要求JDK要求:JDK 1.7+ Elasticsearch版本要求:1.X,2.X,5.X,6.X,7.x,+ Spring Booter 1.x,2.x,+从源代码构建首先从获取源代码然后转到目录...
版本要求:1.X,2.X,5.X,6.X,7.x,+ Spring Booter 1.x,2.x,+ bbos 降 老板 弹性搜索 弹簧靴 全部 1.x 1.x,2.x 全部 2.x 1.x,2.x 全部 3.x 1.x,2.x 全部 5.x 1.x,2.x 全部 6.x 1.x,2.x 全部 7.x 1.x,2.x 快速开始boss ...