阿里Dubbo学习与总结

前言:阿里的Dubbo是一个开源的分布式架构,方便了java的开发,他封装了java Remote Method Invocation(RMI),在项目中只需要引入对应的包,然后进行简单的配置就能够配置出分布式服务。

1.环境配置

    1.1 下载安装 zookeeper

    1.2 下载 dubbo管理工具,然后将war包放在tomcat webapps目录中 在 WEB-INFO目录下面有一个dubbo.properties,里面是dubbo 的登录用户名和密码以及zookeeper的配置然后启动并登录。(效果图)


2.  服务提供者配置

    2.1 maven引入

<!-- dubbo -->
		<dependency>
			<groupId>io.dubbo.springboot</groupId>
			<artifactId>spring-boot-starter-dubbo</artifactId>
			<version>1.0.0</version>
		</dependency>

切记由于有冲突所以一定要去掉spring-boot-devtools依赖

2.2  yum配置文件的配置

spring:
  dubbo:
    application:
      name: provider
    registry:
      address: zookeeper://127.0.0.1:2181
    protocol:
      name: dubbo
      port: 20880
    scan: com.telrob.dubbo.service

由于是服务端,需要端口号,便于对外暴露服务。

2.3 接口以及实现

public interface MDubboServices {
	public String toProvider() throws Exception;
}
@Service(version = "1.0.0") 
public class DemoServicesImpl implements MDubboServices {
	
	public DemoServicesImpl() {
		System.out.println("++++++++++实例化++++++++++++");
	}

	@Override
	public String toProvider() throws Exception {
		System.out.println("hello");
		return "remote Success!";
	}

}

3 调用配置

    3.1 maven 和 “服务提供者配置”一样就不重复了。

    3.2  yum配置文件的配置

spring:
  dubbo:
    application:
      name: consumer
    registry:
      address: zookeeper://127.0.0.1:2181
    scan: com.telrob.dubbo.service

    3.3 代码编写

public interface MDubboServices{
	public String toProvider() throws Exception;
}
@Component
public class MMService {
	
	public MMService() {
		System.out.println("++++++++++++++++++++++++++++");
	}
	@Reference(version = "1.0.0")
	MDubboServices mDubboServices;
	
	public void hhh() throws Exception {
		String str=mDubboServices.toProvider();
		System.out.println("获取到远程服务是:"+str);
	}
}

4 . 总结

    当无法获取提供的服务时一定要检查spring-boot-devtools依赖是否去掉



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值