package com.dubbotest;
import java.util.List;
import org.springframework.context.support.ClassPathXmlApplicationContext;
/**
* 消费者
* @author chase
*
*/
public class Consumer {
public static void main(String[] args) throws Exception {
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(
new String[] { "spring-web.xml" });
context.start();
DemoService demoService = (DemoService) context.getBean("demoService");
String hello = demoService.sayHello("hejingyuan");
System.out.println(hello);
List list = demoService.getUsers();
if (list != null && list.size() > 0) {
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
}
System.in.read();
}
}
Dubbo是一个高性能、轻量级的开源Java RPC框架,它提供了丰富的设计模式和接口透明化的远程服务调用方案。在本案例中,我们看到的是一个完整的Dubbo项目,包括服务提供者(Service Provider)和服务消费者(Service Consumer)的源代码,结合了Zookeeper作为注册中心以及Spring和MyBatis(SSM)的集成。这个案例是为了解决分布式系统中的服务调用问题,让我们详细了解一下这些关键组件和它们的工作原理。 1. **Dubbo**: Dubbo的核心功能是远程方法调用(RPC)。它通过接口定义服务,服务暴露和引用,以及服务的调用。Dubbo支持多种通信协议,如TCP、HTTP等,其中默认使用高性能的TCP协议——Dubbo Protocol。此外,它还提供了服务治理功能,如服务注册、发现、负载均衡、容错处理等。 2. **Zookeeper**: Apache ZooKeeper是一个分布式的协调服务,用于分布式应用程序的数据存储、配置管理、命名服务和组服务。在这个案例中,Zookeeper被用作服务注册与发现的中心。服务提供者在启动时会将自身服务注册到Zookeeper上,服务消费者则通过查询Zookeeper找到可用的服务提供者进行调用。 3. **Spring**: Spring是Java应用开发的一个核心框架,提供依赖注入(DI)、面向切面编程(AOP)等功能,简化了Java企业级应用的开发。在Dubbo项目中,Spring通常用来管理服务提供者和服务消费者的bean,以及配置相关的服务信息。 4. **MyBatis**: MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。在SSM框架中,MyBatis负责数据库操作,与Spring整合后,可以通过注解或XML配置来实现数据库的CRUD操作。 5. **分布式调用**: 在这个案例中,服务提供者会将接口实现打包成一个服务,并发布到Zookeeper上。服务消费者通过Dubbo的API或者Spring的配置,引用这些服务并进行调用。Dubbo提供了多种负载均衡策略,如随机、轮询、最少活跃调用数等,可以根据实际需求选择。 6. **配置**: 配置Zookeeper客户端和Dubbo的相关信息是运行这个案例的关键步骤。通常,我们需要在服务提供者的配置中指定Zookeeper的地址,同时声明提供的服务;在服务消费者的配置中,指定要消费的服务和对应的Zookeeper地址。 7. **运行环境**: 为了运行这个案例,你需要在本地或服务器上安装Java环境、Zookeeper、以及可能的其他依赖(如MySQL数据库),并将案例代码导入到IDE中。确保所有依赖服务正常运行后,可以分别启动服务提供者和消费者,观察其日志以确认服务的注册和调用是否成功。 通过学习和实践这个案例,你可以深入理解Dubbo、Zookeeper、SSM框架的协同工作,以及如何构建和运行一个完整的分布式应用。这将有助于提升你在分布式系统设计和开发方面的技能。

















































































































- 1
- 2

- #完美解决问题
- #运行顺畅
- #内容详尽
- #全网独家
- #注释完整
- xiao_hai16012019-05-10正在研究....

- 粉丝: 2
- 资源: 6
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 基于matlab实现风力发电并网Simulink仿真模型.rar
- 基于matlab实现风力发电直流侧斩波控制Simulink仿真模型.rar
- MATLAB平台下的多目标优化调度:含风光柴储微网的经济运行模型研究与应用,基于多目标粒子群算法的微电网(含风光柴储)优化调度精品代码分享,MATLAB代码:含风光柴储微网多目标优化调度 关键词:微网
- 基于广义Benders分解的综合能源系统优化规划算法:解决机会约束下的规划问题,基于广义Benders分解的综合能源系统优化规划算法:求解机会约束下的系统规划问题,matlab程序,基于广义bende
- 基于遗传算法的风光发电互补Matlab仿真模型.rar
- 基于模糊控制器的风力水力互补发电系统Simulink仿真模型.rar
- 《基于多目标粒子群算法的综合能源系统冷热电联供运行优化研究》,基于多目标粒子群算法的冷热电联供综合能源系统优化调度模型,MATLAB代码:基于多目标粒子群算法冷热电联供综合能源系统运行优化 关键词:综
- 基于粒子群算法优化微电网能量管理Matlab仿真模型.rar
- nxp MCXA 156 DFP 19.0.0 压缩包 主要用于keil 编译器中nxp 支持包
- 基于微电网风光储互补发电系统Matlab仿真模型.rar
- 遗传算法在Matlab中的热电联产选址定容程序:考虑热网与电网潮流的可靠性分析,利用遗传算法在Matlab中实现热电联产选址定容程序的可靠运行,综合考虑热网与电网潮流计算,热电联产选址定容程序matl
- 实验室实时数据智能管理系统创建及可视化.rar
- 毕业设计:基于Python的图书管理系统.zip
- 全桥LLC电源串联谐振仿真模型:Matlab Simulink与Mathcad设计计算详解,输入400V输出48V,功率达2KW,全桥LLC电源串联谐振仿真模型与详细计算设计过程:Matlab Sim
- 基于微信小程序的食堂窗口自助点餐系统(源码)
- 35OA--老板签批系统.pptx


