有了HTTP,为啥还要用RPC
既然有 HTTP 请求,为什么还要用 RPC 调用? 一直以来都没有深究过RPC和HTTP的区别,不都是写一个服务然后在客户端调用么? HTTP和RPC最本质的区别,就是 RPC 主要是基于 TCP/IP 协议的,而 HTTP 服务主要是基于 HTTP 协议的。 我们都知道 HTTP 协议是在传输层 »
既然有 HTTP 请求,为什么还要用 RPC 调用? 一直以来都没有深究过RPC和HTTP的区别,不都是写一个服务然后在客户端调用么? HTTP和RPC最本质的区别,就是 RPC 主要是基于 TCP/IP 协议的,而 HTTP 服务主要是基于 HTTP 协议的。 我们都知道 HTTP 协议是在传输层 »
目录 文章概述 1 为什么重试 2 怎么做重试 2.1 集群容错策略 (1) Failover (2) Failfast (3) Failsafe (4) Failback (5) Forking (6) Broadcast 2.2 源码分析 2.2.1 Failover 2.2.2 Fa »
目录 文章概述 1 为什么重试 2 怎么做重试 2.1 集群容错策略 (1) Failover (2) Failfast (3) Failsafe (4) Failback (5) Forking (6) Broadcast 2.2 源码分析 2.2.1 Failover 2.2.2 Fa »
目录 开始 实现两点之间的通讯(transport) 实现反射调用已注册的方法 总结(自我pua) RPC(Remote Procedure Call Protocol)远程过程调用协议。 一个通俗的描述是:客户端在不知道调用细节的情况下,调用存在于远程计算机上的某个对象,就像调用本地应 »
目录 开始 实现两点之间的通讯(transport) 实现反射调用已注册的方法 总结(自我pua) RPC(Remote Procedure Call Protocol)远程过程调用协议。 一个通俗的描述是:客户端在不知道调用细节的情况下,调用存在于远程计算机上的某个对象,就像调用本地应 »
目录 从一个 Demo 入手 这 RPC 吗 RPC Server 原理 注册服务 注册 Http Handle 逻辑处理 RPC Client 原理 gob 编解码 总结 从一个 Demo 入手 为了快速进入状态,我们先搞一个 Demo,当然这个 Demo 是参考 Go 源码 sr »
目录 从一个 Demo 入手 这 RPC 吗 RPC Server 原理 注册服务 注册 Http Handle 逻辑处理 RPC Client 原理 gob 编解码 总结 从一个 Demo 入手 为了快速进入状态,我们先搞一个 Demo,当然这个 Demo 是参考 Go 源码 sr »
这可能是有史以来最好用的RPC接口测试工具 文末有视频简介 获取方式 一只小Coder 简介 T-Dubbo,是一个基于Dubbo的全自动RPC接口测试平台为当下最流行的微服务架构中的RPC接口提供了测试平台,传统的RPC接口测试过程十分繁琐,需要写对应的REST接口、或者寻找其他方式来进行测试, »
这可能是有史以来最好用的RPC接口测试工具 文末有视频简介 获取方式 一只小Coder 简介 T-Dubbo,是一个基于Dubbo的全自动RPC接口测试平台为当下最流行的微服务架构中的RPC接口提供了测试平台,传统的RPC接口测试过程十分繁琐,需要写对应的REST接口、或者寻找其他方式来进行测试, »
目录 前言 Node.js 朴素 RPC Thrift RPC Demo 补充内容 关于 TCP “粘包”问题说明 前言 在构建微服务时,为了追求极致的效率,服务间一般会使用 RPC(Remote Procedure Call)来进行通信。本文通过 Node.js 来实践一下。 N »
hello 大家好呀,我是小楼,这是系列文《Go底层原理剖析》的第三篇,依旧分析 Http 模块。我们今天来看 Go内置的 RPC。说起 RPC 大家想到的一般是框架,Go 作为编程语言竟然还内置了 RPC,着实让我有些吃鲸。 从一个 Demo 入手 为了快速进入状态,我们先搞一个 Demo,当然 »
1、前言 在上一篇文章中,完成了ZooKeeper注册中心。但是在上一篇中,ZooKeeper添加了一个简单的本地缓存,存在一些问题: 当本地缓存OK,ZooKeeper对应服务有新的实例时,本地缓存不会自动更新 当ZooKeeper对应服务实例关闭,本地缓存不会监控到实例消失 2、编写 之前我们是 ... »
1.前言 本文章是笔主在声哥的手写RPC框架的学习下,对注册中心的一个拓展。因为声哥某些部分没有保留拓展性,所以本文章的项目与声哥的工程有部分区别,核心内容在Curator的注册发现与注销,思想看准即可。 本文章Git仓库:zko0/zko0-rpc 声哥的RPC项目写的确实很详细,跟学一遍受益匪浅 ... »
目录 正文 1:如何运行项目 2:从客户端调用开始(springboot-zk-study项目) 3:服务端处理请求 4:接下来要做什么 正文 项目地址:gitee.com/baojh123/rp… netty-study 这个项目是没用到的,可以删掉,主要是测试Nett »
JDK 8 是一次重大的版本升级,新增了非常多的特性,其中之一便是 CompletableFuture。自此从 JDK 层面真正意义上的支持了基于事件的异步编程范式,弥补了 Future 的缺陷。 在我们的日常优化中,最常用手段便是多线程并行执行。这时候就会涉及到 CompletableFutur... ... »
前言 Dubbo源码阅读分享系列文章,欢迎大家关注点赞 SPI实现部分 Dubbo-SPI机制Dubbo-Adaptive实现原理Dubbo-Activate实现原理Dubbo SPI-Wrapper 注册中心 Dubbo-聊聊注册中心的设计Dubbo-时间轮设计 通信 Dubbo-聊聊通信模块设计 ... »
日志信息如下 Attempted to get executor loss reason for executor id 17 at RPC address 192.168.48.172:59070, but got no response. Marking as slave lost. java. ... »
为什么选择 gRPC 历史 长久以来,我们在前后端交互时使用WebApi + JSON方式,后端服务之间调用同样如此(或者更久远之前的WCF + XML方式)。WebApi + JSON 是优选的,很重要的一点是它们两者都是平台无关的三方标准,且足够语义化,便于程序员使用,在异构(前后端、多语言后端 »
Rabbitmq 一: 消息队列介绍 1.介绍 消息队列就是基础数据结构中的 "先进先出" 的一种数据机构。想一下,生活中买东西需要排队,先排队的人先买消费,就是典型的 "先进先出"。 # 扩展 redis: 可以作为简单的消息队列 celery: 本事就是基于消息队列进行的封装。 2.MQ解决了什 ... »
目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ »