rpc
乐乐Java路漫漫
热衷于互联网JAVA开发,对新技术的探索孜孜不倦,对问题的研究废寝忘食,希望大家一起探索
展开
-
dubbo系列第一篇【服务远程调用的源码解析】
1.十层架构图:重点:服务降级,集群容错, 服务路由,负载均衡,2.总结:(1)【MockClusterInvoker】若没有指定mock属性,或其值为false,则没有降级功能,如果有,则判断是否以force开头,是则强制降级,不需要远程调用,如果不是force开头,则进行远程调用,如果出现异常(如超时异常或发生程序异常)则进行服务降级(2)【AbstractClusterInvoker】服务路由(3) 获取负载均衡策略(4)【FailoverClusterInvoker】集群容错:(5)原创 2020-05-25 07:48:47 · 366 阅读 · 0 评论 -
你为什么要使用RPC
首先什么是RPCdubbo传输协议基于自定义报文的tcp协议。首先要否认一点 http 协议相较于自定义tcp报文协议,增加的开销在于连接的建立与断开。http协议是支持连接池复用的,也就是建立一定数量的连接不断开,并不会频繁的创建和销毁连接。(1)http和rpc的最终差异还是传输协议:通用定义的http1.1协议的tcp报文包含太多废信息,一个POST协议的格式大致如下HTTP/1.0 200 OKContent-Type: text/plainContent-Length: 137582原创 2020-05-25 06:50:29 · 1028 阅读 · 0 评论 -
dubbo系列第四篇【服务暴露过程源码详解】
dubbo服务暴露过程入口:org.apache.dubbo.config.spring.ServiceBean#onApplicationEvent// 当Spring容器刷新时会触发其执行@Overridepublic void onApplicationEvent(ContextRefreshedEvent event) { // 若当前service尚未发布,也没有取消发布,则进行发布 if (!isExported() && !isUnexported()原创 2020-05-14 14:57:17 · 422 阅读 · 0 评论 -
netty简介
1.1.1 netty简介Netty 是一个异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能服务器和客户端。Netty 是一个 NIO 客户机-服务器框架,它支持快速、简单地开发网络应用程序,如服务器和客户机。它大大简化了网络编程,如 TCP 和 UDP 套接字服务器。“快速和简单”并不意味着生成的应用程序将受到可维护性或性能问题的影响。Netty经过精心设计,并积累了许多协议...原创 2020-04-12 20:49:59 · 618 阅读 · 0 评论 -
什么是 RPC 框架
rpc框架解释谁能用通俗的语言解释一下什么是 RPC 框架? - 远程过程调用协议RPC(Remote Procedure Call Protocol)首先了解什么叫RPC,为什么要RPC,RPC是指远程过程调用,也就是说两台服务器A,B,一个应用部署在A服务器上,想要调用B服务器上应用提供的函数/方法,由于不在一个内存空间,不能直接调用,需要通过网络来表达调用的语义和传达调用的数据。比如...转载 2018-03-14 17:05:16 · 112492 阅读 · 5 评论