bbossgroups RPC 是基于bbossaop的轻量级rpc框架,感兴趣的朋友可以用一用。bbossgroups提供的RPC
框架是bboss aop子项目中一个子模块,具有以下特点:
1.支持多种通讯协议jms,jgroups,mina,webservice,restful,并且协议可扩展
2.提供强有力的安全管理插件(可插拔的认证、鉴权、数据包加/解密插件),保证远程通讯安全可靠。
3.开发部署模式简便,打破传统的RPC开发模式,不依赖于任何应用服务器和容器,你只需启动aop框架中提供的各种协议之一(例如jms,
jgroups,mina,webservice)或者同时启动几种协议,你就可以对aop框架中管理的任何组件发起远程方
法调用,唯一的前提是你的方法参数和返回结果必须是实现java.io.Serializable接口。同时你可以通过
rpc框架的各种安全管理插件来保护你开放的远程组件服务。
4.远程方法调用方式简单,你只需要按照以下格式即可发起一个远程方法调用
带认证信息格式:
(protocol::uri)/serviceid?user=userAccount&password=userPassword;
不带认证信息格式:
(protocol::uri)/serviceid;
protocol:远程通讯协议
uri:服务器地址
serviceid:部署在aop框架中的组件服务标识
例如:
(mina::172.16.17.216:12347)/test.security.bean?user=admin&password=123456,其中的账号为admin,密码为123456
@Test
public void testMinaSecurityBean()
{
BussinessBeanInf beaninf = (BussinessBeanInf)BaseSPIManager.getBeanObject("(mina::172.16.17.216:12347)/test.security.bean?user=admin&password=123456");
System.out.println("testMinaSecurityBean beaninf.getCount():"+beaninf.getCount());
System.out.println("testMinaSecurityBean beaninf.printMessage(message):"+beaninf.printMessage("test.security.bean"));
}
@Test
public void testJmsSecurityBean()
{
BussinessBeanInf beaninf = (BussinessBeanInf)BaseSPIManager.getBeanObject("(jms::yinbiaoping-jms)/test.security.bean?user=admin&password=123456");
System.out.println("testJmsSecurityBean beaninf.getCount():"+beaninf.getCount());
System.out.println("testJmsSecurityBean beaninf.printMessage(message):"+beaninf.printMessage("test.security.bean"));
}
@Test
public void testJGroupSecurityBean()
{
BussinessBeanInf beaninf = (BussinessBeanInf)BaseSPIManager.getBeanObject("(jgroup::172.16.17.216:1186)/test.security.bean?user=admin&password=123456");
System.out.println("testJGroupSecurityBean beaninf.getCount():"+beaninf.getCount());
System.out.println("testJGroupSecurityBean beaninf.printMessage(message):"+beaninf.printMessage("test.security.bean"));
}
@Test
public void testWebServiceSecurityBean()
{
BussinessBeanInf beaninf = (BussinessBeanInf)BaseSPIManager.getBeanObject("(webservice::http://172.16.17.216:8080/WebRoot/cxfservices)/test.security.bean?user=admin&password=123456");
System.out.println("testJGroupSecurityBean beaninf.getCount():"+beaninf.getCount());
System.out.println("testJGroupSecurityBean beaninf.printMessage(message):"+beaninf.printMessage("test.security.bean"));
}
5.安全管理机制可以方便地启用和关闭
6.远程方法调用过程可自动调优,即自动区分远程目标地址是本地地址还是远程地址,判别rpc调用是远
程方法调用还是当做本地方法调用
7.可以简单地实现单点服务调用和多播服务调用,如果是多播服务调用,rpc框架提供了获取不同服务器
返回结果的相应接口,简单实用
8.bbossgroups rpc服务框架提供远程服务通讯的质量保障,例如故障重连,访问超时等等
9.bbossgroups rpc应用场景广泛,可以用于普通的rpc服务调用场景,也可以用作集群环境中各节点应用
之间通讯工具,因为你可以轻易地发布你的应用的远程组件,轻易地发起远程方法调用(只是获取组件实
例的方法不同,方法调用和普通的对象方法调用一样)
10.rpc框架充分集成并吸纳了各种通讯协议本身的优点(jms,webservice,jgroup,mina)。
11.通过restful风格的协议,可以方便地实现rpc服务的路由功能
目前提供的大致功能就这些了,有什么考虑不周或者不正确的地方还请大家批评指正,一起交流学习,更
详细的情况介绍请访问我的博客http://blog.csdn.net/yin_bp。
bbossgroups项目发布的版本是1.0,将在1.0rc版本中增加对jboss netty协议框架的支持,呵呵 。
bbossgroups rpc框架包含在子项目bboss aop框架中,下载地址:
http://sourceforge.net/projects/bboss/files/bbossgroups-1.0/bbossaop.zip/download
文档下载地址:
http://sourceforge.net/projects/bboss/files/bbossgroups-1.0/bbossgroups%20document.zip/download
相关推荐
在企业J2EE项目开发中,bbossgroups框架扮演着重要角色,它不仅包含了AOP/IoC、MVC、Persistent、Taglib等核心组件,还集成了分布式RPC服务、分布式事件框架,为开发者提供了全方位的开发支持。 ### 核心组件 - **...
bbossgroups是一个开源的企业级Java应用框架,旨在简化企业级开发,提高开发效率。本文将深入讲解bbossgroups开发系列文章之一中的最佳实践,涉及bboss MVC框架的基础配置、控制器、数据库访问、DAO组件、业务组件...
近日,bbossgroups 3.0 正式发布,这款国内首款集AOP(面向切面编程)、MVC(模型-视图-控制器)、Persistent(持久化)、JSP Taglib(JSP 标签库)、分布式RPC服务及分布式事件框架于一体的J2EE开发框架,为开发者...
本文将深入探讨Bbossgroups的体系架构,包括AOP内核、MVC框架、标签库、国际化、主题管理、RESTful架构、持久层框架、分布式事件框架、任务调度、服务发布与访问、安全管理等多个方面。 1. **AOP内核**:AOP(面向...
bbossgroups 是一个开源的企业级Java框架,专为构建高性能、高可用性的分布式应用程序而设计。这个框架提供了丰富的功能,包括消息队列、分布式缓存、事务管理、任务调度等,是开发企业级应用的有力工具。本教程将...
在Java开发中,bbossgroups 3.1框架提供了一个名为SQLExecutor的组件,用于简化数据库操作。这个组件提供了一种高效的批处理和单条SQL执行的方式,它基于Apache License 2.0开源,允许开发者在遵守相应条款的情况下...
BBoss(全称为bbossgroups)是一个专为企业级J2EE应用设计的开源框架,它为Java开发者提供了一系列强大的工具和服务,以简化Web应用程序的开发过程。该框架旨在提高开发效率,降低维护成本,同时保持高度的灵活性和...
12. bboss:bbossgroups是首个集成AOP、MVC、持久层、JSP标签库、分布式RPC服务和序列化组件的JavaEE企业级开发框架。 13. BeeFramework:BeeFramework是iOS平台的快速开发框架,特点包括易学易用、组件丰富,提供...
该框架包含222个文件,包括164个Java源文件、14个XML配置文件、6个Gradle构建文件、6个JAR包文件、6个属性文件等,旨在支持跨域应用集群节点的会话共享与监控,并提供示例站点http://session.bbossgroups.com/...
提供的压缩包文件"bbossgroups 框架培训教程.pptx"和"Bbossgroups演示文档.pptx"可能包含了更多关于bboss mvc框架的详细信息和使用示例,包括如何配置和使用JSONP等特性。建议查阅这些文档以获取更深入的理解。 总...
java版地图源码弹性搜索Bboss Bboss 是一个很好的 elasticsearch Java rest 客户端。 它以类似于mybatis的方式操作和访问elasticsearch。 环保要求 JDK 要求:JDK 1.7+ Elasticsearch ...>com.bbossgroups.p
弹性Tran老板数据交换模块使用文档: : Bboss是一个很好的Elasticsearch Java Rest客户端。 它运行并访问像mybatis这样的... 首先将BBoss的maven依赖项添加到pom.xml中: < dependency> < groupId>com.bbossgroups.p