Dubbo框架介绍「建议收藏」

Dubbo是一个常用的分布式服务框架,它致力于提供高性能和透明化的RPC远程调用服务方案,Dubbo有助于开发企业级的开发效率,以及可以通过简单的配置就可以做到负载均衡。   一、Dubbo的基础知识   1.Dubbo是什么   2.Dubbo涉及的知识      二、Dubbo框架设计介绍   1.Dubbo的各个角色

大家好,又见面了,我是你们的朋友全栈君。

     Dubbo是一个常用的分布式服务框架,它致力于提供高性能和透明化的RPC远程调用服务方案,Dubbo有助于开发企业级的开发效率,以及可以通过简单的配置就可以做到负载均衡。


     一、Dubbo的基础知识


     1.Dubbo是什么

     2.Dubbo涉及的知识

     

     二、Dubbo框架设计介绍


     1.Dubbo的各个角色


     Dubbo在设计的时候,抽象出了四个角色的概念,它包括Consumer、Provider、Registry、Monitor。Consumer就是我们常说的消费者,Provider表示服务的提供者,Registry表示Dubbo服务的注册中心,实际上Dubbo并没有这样的一个注册应用,它只是抽象出了注册中心的这么一个概念,Monitor是监控类型的一个角色。


     首先,Provider将服务注册到注册中心上,然后Consumer获取到这些服务,来调用Provider。或者当Provider提供的服务有变化时,也会相应的通知Consumer。Provider和Consumer在调用时,都会发送相应的统计信息给Monitor.


     2.生产者配置和启动


     ①引入maven依赖


		<dependency>
			<groupId>com.alibaba</groupId>
			<artifactId>dubbo</artifactId>
			<version>2.5.3</version>			
		</dependency>

     ②编写配置文件


     Spring默认目录:classpath*:META-INFO/spring/*.xml

     这个文件下的所有xml都会加载到spring容器中,如果有Dubbo相关的配置,就会启动对应的NIO容器。


     ③xsd文件     


<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://code.alibabatech.com/schema/dubbo
        http://code.alibabatech.com/schema/dubbo/dubbo.xsd"> 
    
    <dubbo:application/> 
    <dubbo:provider/>	  
    <dubbo:registry/>
    <dubbo:protocol/>
    <dubbo:service  interface="com.gome.service.ReadService"  ref="readService"/>

</beans>

     ④Dubbo标签


                  Dubbo框架介绍「建议收藏」


     3.消费之配置和启动


     ①引入maven依赖


                <dependency>
			<groupId>com.alibaba</groupId>
			<artifactId>dubbo</artifactId>
			<version>2.5.3</version>			
		</dependency>

     ②编写配置文件


     Spring默认目录:classpath*:META-INFO/spring/*.xml


     ③加载XML的方式


     1>自定义容器加载xml

ApplicationContext ctx = new ClassPathXmlApplicationContext("/spring/spring-config.xml");

     2>web类型配置

<context-param>
		<param-name>contextConfigLocation</param-name>
		<parem-value>classpath*:/spring/spring-config.xml</parem-value>
	</context-param>
	


     3>Junit启动方式

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration({"classpath*:spring-*.xml"})
public class HttpRpcTest{}

     ④xsd文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
 	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 	xmlns:jee="http://www.springframework.org/schema/jee"
	xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
	xmlns:context="http://www.springframework.org/schema/context"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
	http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd
	http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.1.xsd
	http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd
	http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd"
	default-lazy-init="false" >
	
   <dubbo:application></dubbo:application>   
   <dubbo:registry></dubbo:registry> 
   <dubbo:consumer></dubbo:consumer>  
   <dubbo:reference></dubbo:reference>
    
</beans>


     ⑤Dubbo标签


                  Dubbo框架介绍「建议收藏」

     在这里需要注意,Dubbo中引用的spring的版本是2.5的,要和项目中的保持一致。这里只是对Dubbo框架的相关配置做了简单的介绍,也是站在RPC框架的基础上,Dubbo是RPC的一种实现,理解了PRC的底层原理,能更好的帮助我们Dubbo框架的相关配置。   

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/129303.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 知名技术团队博客网站有哪些_知名创业团队

    知名技术团队博客网站有哪些_知名创业团队国内技术团队博客1 http://tech.meituan.com/美团点评技术团队2 http://fe.meituan.com/ 美团前端技术团队3 http://tech.uc.cn/   UC技术团队4 http://tencentdba.com/ 腾讯游戏DBA团队5 http://noops.me/    小米运维部非官方博客

    2022年8月13日
    6
  • 测试从零开始-No.6-测试用例设计方法(等价类+边界值)「建议收藏」

    测试从零开始-No.6-测试用例设计方法(等价类+边界值)「建议收藏」问题:有时候用selenium操作浏览器,打开多个页面后,在不用的时候,需要关掉,切换页面需要切换句柄,关掉页面后,也需要重新切换句柄,否则页面接着操作元素会出问题解决方法:

    2022年8月31日
    6
  • js 比java还难_javascript与java哪个难「建议收藏」

    js 比java还难_javascript与java哪个难「建议收藏」javascript与java哪个难?答案是:JavaScript比Java更难。那么这是为什么?下面本篇文章就来给大家介绍一下,希望对大家有所帮助。原因:JavaScript有太多东西需要你自己去理解,这些东西里有很多要么Java已经给你做成范式了,你可以通过学习范式来理解;要么就是根本没有,无需理解。JavaScript需要在语言的基础上再整理一套方法论,这个过程会有不同流派。而Java基本上…

    2022年7月8日
    20
  • Date与Quartz的cron之间的相互转换「建议收藏」

    Date与Quartz的cron之间的相互转换「建议收藏」实现Date与Quartz的cron之间的相互转换.

    2022年6月17日
    31
  • 如何零基础开始自学Python编程「建议收藏」

    如何零基础开始自学Python编程「建议收藏」转载——原作者:赛门喵链接:https://www.zhihu.com/question/29138020/answer/1411702420.明确目标我是真正零基础开始学Python的,从一

    2022年7月5日
    22
  • ov7725摄像头人脸识别_图像采集是干什么的

    ov7725摄像头人脸识别_图像采集是干什么的目前FPGA用于图像采集传输处理显示应用越来越多,主要原因是图像处理领域的火热以及FPGA强大的并行处理能力。本文以OV7725为例,对摄像头使用方面的基础知识做个小的总结,为后续做个铺垫。  XCLK:工作时钟输入,由主控器产生,频率为24MHz;    HREF:行参考信号输出;  PCLK:像素时钟输出,由XCLK产生,用于控制器采样图像数据(时钟速率&amp;lt;5n…

    2022年9月23日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号