dubbo理解

Dubbo服务的调用基本上都是出现在分布式项目中,最常见的电商网站、涉及买卖的APP等。
比如某个购物APP,目前最常见的架构就是做成分布式架构,拆分成很多个系统,比如用户模块、短信模块、产品模块、订单模块、支付模块等等,这样的架构里面就会涉及到dubbo接口的调用。
场景1:
比如苏宁易购上我的易购,你点击进去后能查看到订单信息,我的易购这部分代码在开发时按道理会写在用户模块里面,但是现在需要看到订单信息,用户模块就需要调用订单模块的接口,这里就涉及到了dubbo接口的调用。此处用户模块就是消费者,订单模块就是生产者。
dubbo调用涉及到的配置文件:
<!--生产者-->
<dubbo:service ref="orderService" interface="com.nyd.pay.api.service.orderService" protocol="dubbo" /> <!--消费者-->
<dubbo:reference id="userServiceContract" interface="com.nyd.user.api.userServiceContract" timeout="10000" /> 详细解释:
当A服务器上的应用发起远程调用时,方法中的请求参数需要通过底层的网络协议(TCP)传送到B服务器,但由于网络协议是基于二进制,方法中的请求参数需要序列化成二进制存到内存里面,然后再通过寻址和传输将序列化的二进制
发送到B服务器; 服务器B接收到请求后,将会进行反序列化,恢复为内存中的表达方式,然后找到对应的方法进行本地调用并返回,返回值序列化并发送到A服务器,A服务器接收到B服务器的返回值后,进行反序列化,恢复为内存中的表达方式,然后
A服务器上的应用进行相应处理。
dubbo理解的更多相关文章
- Apache Dubbo理解和应用
官网:https://dubbo.apache.org/ slogan:高性能.轻量级的开源Java RPC框架 提供了六大核心能力:面向接口代理的高性能RPC调用,智能容错和负载均衡,服务自动注册和 ...
- SOA面向服务的架构理解
Ø 单一应用架构 ·当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本. Ø 垂直应用架构 当访问量逐渐增大,单一应用增加机器带来的加速度越来越小,将应用拆成互不相干的几 ...
- 5-3 Dubbo | 负载均衡
Dubbo概述 什么是RPC RPC是Remote Procedure Call的缩写 翻译为:远程过程调用 目标是为了实现两台(多台)计算机\服务器,互相调用方法\通信的解决方案 RPC的概念主要定 ...
- 通过单元测试理解spring容器以及dubbo+zookeeper单元测试异常处理
一.先说一个结论:单元测试与主项目的spring容器是隔离的,也就是说,单元测试无法访问主项目spring容器,需要自己加载spring容器. 接下来是代码实例,WEB主项目出于运行状态,单元测试中可 ...
- 对于Dubbo的理解
最近才开始看关于Dubbo,曾经居然把Dubbo跟ActiveMQ联系到了一起,很显然 ,是没有深入理解Dubbo的本质. 其实Dubbo是项目与项目(或者是系统与系统)之间通信用的.在Dubbo没出 ...
- 理解 Dubbo SPI 扩展机制
写在前面 最近接触了 gRPC 体会到虽然众多 RPC 框架各有各的特点但是他们提供的特性和功能有很多的相似之处 , 这就说明他们面对同样的分布式系统带来的问题.从 2016 年左右开始接触到 dub ...
- [转] 理解 Dubbo SPI 扩展机制
写在前面 最近接触了 gRPC 体会到虽然众多 RPC 框架各有各的特点但是他们提供的特性和功能有很多的相似之处 , 这就说明他们面对同样的分布式系统带来的问题.从 2016 年左右开始接触到 dub ...
- dubbo知识点理解
1.分布式服务架构关键在于:用于提高业务复用及整合的 分布式服务框架(RPC) 是关键.注册中心是关键,提供业务复用和整合. 2.dubbo在消费方,获取服务列表后提供软负载均衡.dubbo在消费方提 ...
- 分布式个人理解概述和dubbo实现简述
什么是分布式?为什么使用分布式? 个人有一些浅薄的理解希望可以批评指正,从概念和应用 两个方面概述: 一.概念:分布式也叫分布式服务,也就是说 他是 一种面向服务思想的程序设计和架构风格,典 ...
随机推荐
- CodeForces 730A Toda 2 (模拟)
题意:给定一个序列,现在你每次至多给5个人的权值减小1,最少2个人,最小是0,使得剩下的所有权值都相等且尽量大. 析:用multiset来模拟,每次取权值最大的三个或者两个,直到最后相等.我开始没有这 ...
- vue中的列表项删除操作
<script> Vue({ data: { orders: [] }, created() { $.get( { url: 'orders', dataType: 'json' }) . ...
- bzoj 1922: [Sdoi2010]大陆争霸【dijskstra】
d[u]为u被几个节点保护,d1[u]为最早到u的时间,d2[u]为u的最早可进入时间(保护点都被打下来了的时候),然后最终最早进入时间就是max(d1[u],d2[u]),把这个作为权值放进小根堆, ...
- Ubuntu 18.04 关闭蓝牙开机启动
sudo gedit /etc/rc.local 然后,加入下面一行 rfkill block bluetooth
- [BZOJ1382]Mars Maps
Description In the year 2051, several Mars expeditions have explored different areas of the red plan ...
- Ignatius and the Princess III HDU - 1028 || 整数拆分,母函数
Ignatius and the Princess III HDU - 1028 整数划分问题 假的dp(复杂度不对) #include<cstdio> #include<cstri ...
- 最短路(Dijkstra) HDOJ 4318 Power transmission
题目传送门 题意:起点s到终点t送电,中途会有损耗,问最小损耗是多少 分析:可以转换为单源最短路问题,用优先队列的Dijkstra版本,d[]表示从s出发到当前点的最小损耗,用res保存剩下的电量.当 ...
- mysql各个版本下载地址
之所记录下来是因为我找了好久才找到:这下记着了:http://downloads.mysql.com/archives/community/ 希望对没有找到的朋友有帮助
- ABP Zero最新版源码
获取专业版源码 官网 学习版源码
- absolute元素水平居中
原始(未居中): .con{ width:200px; height:200px; background:#ccc; position:relative; } .abs{ width:40px; he ...