Spring Cloud课程干货总结第六期—微服务架构常用RPC协议

简介: 阿里云开发者学堂全员开课计划上线!阿里云开发者学堂将为开发者提供超多免费Java精品课!本次干货总结了——微服务架构常用RPC协议 课时课程内容 。阿里云开发者学堂是开发者学习成长的一站式学习平台,为开发者构建完善的学习成长体系、技术赋能。Java Spring Cloud是全球范围内成熟、完善、流行的微服务架构方案体系,被众多的互联网大公司采用,包括阿里巴巴、腾讯、支付宝、网易、IBM、谷歌、京东、百度、滴滴等。为给同学带来最佳学习效果,课程文字、课程链接、图谱地址统统为大家放送了哦!

哈喽各位同学们大家好呀,小编今天带着开发者学院中课程微服务架构常用RPC协议”干货总结来了~一起学习新课程吧!

课程链接以及图谱地址小编已经为大家指路了,搭配学习效果更佳👇

课程名称:微服务架构常用RPC协议

课程地址:https://developer.aliyun.com/learning/course/60/detail/1109

图谱名称:Alibaba Java 技术图谱

图谱地址:https://developer.aliyun.com/graph/java


微服务架构常用RPC协议

本期课程包括微服务常用的通信模式经典的RPC协议微服务常用的通信协议等知识点 

一、微服务常用的通信模式

1微服务的消息通信模式

消息交换的模式有很多种,使用较多的是同步消息的交互模式,典型特征发送完消息后会等待一个结果 

浏览器发送一个网页请求后会等待网页返回,中间存在请求应答的过程,这就属于同步请求的模式。 异步请求模式的常见场景是消息推送,发送完某个消息后,这个消息并不会立即到达,可能会经过一定延迟才到达接收方异步模式的优点并发吞吐量较高缺点无法保证消息的实时性 

目前在分布式架构上,同步与异步相结合的消息交换场景也很常见。 

协议上绝大部分都是同步模式,个别支持异步例如邮件协议或者消息协议

 二、经典的RPC协议  

     RPC本身远程过程调用主要解决远程的通信问题不仅是封装原始的数据通信协议网络协议。 

基础上,需要借助某些框架语言来实现功能的交互。例如,希望客户端通过调用服务器端的某个订单或者加密的功能,实现远程的功能调用 

通过网络来暴露自己代码功能较早的一种方式RPC协议非常多,不仅REST API,APP协议暴露接口,前端分裂架构基本上都是API加前端小程序APPPC网页这种模式是在移动互联网时代用得较多的架构 

前端分离,后端演化成微服务架构微服务架构一般和业务模式有关业务需求是第一位技术服务于业务。在内部通信领域并非只有一种协议可能多种协议并存TCPUDPHTTP协议并存。 

Rest API基本上走的APP协议一般是接收数据格式在这个领域里面RPC概念native本身也支持分布式通信框架但是相对来说在大规模分布式集群治理领域阿里的Dubbo设计非常优秀,不断迭代,表现优异 

数据库JDBC属于分布式通信解决方案之一通信协议是GDB框架定义专有的协议格式,支持引入中间消息队列等,使用不同的协议进行通信。 

这并非表示跨平台是最优秀的,它的性能越好,安全性越可能越。但是它开放性标准化有助于大范围的行业推广,适用性更强。有些公司的协议不开放这是由于公司的业务角度来说微服务属于分布式架构 

分布架构继承了早期的分布式框架特点,RVICES API这些应用基础上进行了架构的升级改造,在大规模的服务接口集群化治走向了更高的层次,架构师面临挑战也更大。 

那么在分布系统中常用的一些RPC协都有哪些呢?

三、微服务常用的通信协议 

1微服务之间的通信协议与框架中间件 

目前,微服务Spring Cloud开发为代表,选取的是 Rest通信接口格式,后续的微服框架可能更多,有些微服务支持更多的协议数据格式目前主流的是HTTP,属于同步消息通模式H5websocket 

当下的移动互联网时代大部分追求轻量级接口目前的框架Rest APIJavaGo还是node都非常方便可以直接在APP协议站基础上进行扩展。 

消息队列在早期分布式架构中经常使用比较经典的是RabbitMQ兔子消息队KafkaRocketMQ火箭消息Kafka消息并发量吞吐量能达到百万级别 

对于全新的微服加工来说可能会存在几种协议,有同步异步和两种形式并存,也有可能是使用APP协议或其他的TCP或者二进制等相关协议这几种协议经典且各有所长 

在物联网行业存在特殊情况,可能进行对接时候,设备可能还有自己的数据协议但是每个分布式框架底层可能支持一种协议或者多种协议  

不同语言的REST框架基本WEB框架改造,怎样才能满足大部分的场景需求呢?


带着疑问,请同学们点击“阅读原文”查看完整课程叭~



好啦~本期小编就分享到这里,想学习更多嘛?点击下方"阅读原文"查看更多课程吧!

相关文章
|
6月前
|
监控 Java 数据库
从零学 Dropwizard:手把手搭轻量 Java 微服务,告别 Spring 臃肿
Dropwizard 整合 Jetty、Jersey 等成熟组件,开箱即用,无需复杂配置。轻量高效,启动快,资源占用少,内置监控、健康检查与安全防护,搭配 Docker 部署便捷,是构建生产级 Java 微服务的极简利器。
707 117
|
5月前
|
负载均衡 Java API
《深入理解Spring》Spring Cloud 构建分布式系统的微服务全家桶
Spring Cloud为微服务架构提供一站式解决方案,涵盖服务注册、配置管理、负载均衡、熔断限流等核心功能,助力开发者构建高可用、易扩展的分布式系统,并持续向云原生演进。
|
12月前
|
安全 Java Apache
微服务——SpringBoot使用归纳——Spring Boot中集成 Shiro——Shiro 身份和权限认证
本文介绍了 Apache Shiro 的身份认证与权限认证机制。在身份认证部分,分析了 Shiro 的认证流程,包括应用程序调用 `Subject.login(token)` 方法、SecurityManager 接管认证以及通过 Realm 进行具体的安全验证。权限认证部分阐述了权限(permission)、角色(role)和用户(user)三者的关系,其中用户可拥有多个角色,角色则对应不同的权限组合,例如普通用户仅能查看或添加信息,而管理员可执行所有操作。
589 0
|
12月前
|
安全 Java 数据安全/隐私保护
微服务——SpringBoot使用归纳——Spring Boot中集成 Shiro——Shiro 三大核心组件
本课程介绍如何在Spring Boot中集成Shiro框架,主要讲解Shiro的认证与授权功能。Shiro是一个简单易用的Java安全框架,用于认证、授权、加密和会话管理等。其核心组件包括Subject(认证主体)、SecurityManager(安全管理员)和Realm(域)。Subject负责身份认证,包含Principals(身份)和Credentials(凭证);SecurityManager是架构核心,协调内部组件运作;Realm则是连接Shiro与应用数据的桥梁,用于访问用户账户及权限信息。通过学习,您将掌握Shiro的基本原理及其在项目中的应用。
434 0
|
12月前
|
NoSQL Java 关系型数据库
微服务——SpringBoot使用归纳——Spring Boot 中集成Redis——Redis 介绍
本文介绍在 Spring Boot 中集成 Redis 的方法。Redis 是一种支持多种数据结构的非关系型数据库(NoSQL),具备高并发、高性能和灵活扩展的特点,适用于缓存、实时数据分析等场景。其数据以键值对形式存储,支持字符串、哈希、列表、集合等类型。通过将 Redis 与 Mysql 集群结合使用,可实现数据同步,提升系统稳定性。例如,在网站架构中优先从 Redis 获取数据,故障时回退至 Mysql,确保服务不中断。
423 0
微服务——SpringBoot使用归纳——Spring Boot 中集成Redis——Redis 介绍
|
11月前
|
人工智能 JavaScript 开发工具
MCP详解:背景、架构与应用
模型上下文协议(MCP)是由Anthropic提出的开源标准,旨在解决大语言模型与外部数据源和工具集成的难题。作为AI领域的“USB-C接口”,MCP通过标准化、双向通信通道连接模型与外部服务,支持资源访问、工具调用及提示模板交互。其架构基于客户端-服务器模型,提供Python、TypeScript等多语言SDK,方便开发者快速构建服务。MCP已广泛应用于文件系统、数据库、网页浏览等领域,并被阿里云百炼平台引入,助力快速搭建智能助手。未来,MCP有望成为连接大模型与现实世界的通用标准,推动AI生态繁荣发展。
8859 66
|
11月前
|
人工智能 自然语言处理 API
MCP与A2A协议比较:人工智能系统互联与协作的技术基础架构
本文深入解析了人工智能领域的两项关键基础设施协议:模型上下文协议(MCP)与代理对代理协议(A2A)。MCP由Anthropic开发,专注于标准化AI模型与外部工具和数据源的连接,降低系统集成复杂度;A2A由Google发布,旨在实现不同AI代理间的跨平台协作。两者虽有相似之处,但在设计目标与应用场景上互为补充。文章通过具体示例分析了两种协议的技术差异及适用场景,并探讨了其在企业工作流自动化、医疗信息系统和软件工程中的应用。最后,文章强调了整合MCP与A2A构建协同AI系统架构的重要性,为未来AI技术生态系统的演进提供了方向。
1550 62
|
12月前
|
消息中间件 存储 Java
微服务——SpringBoot使用归纳——Spring Boot中集成ActiveMQ——ActiveMQ安装
本教程介绍ActiveMQ的安装与基本使用。首先从官网下载apache-activemq-5.15.3版本,解压后即可完成安装,非常便捷。启动时进入解压目录下的bin文件夹,根据系统选择win32或win64,运行activemq.bat启动服务。通过浏览器访问`http://127.0.0.1:8161/admin/`可进入管理界面,默认用户名密码为admin/admin。ActiveMQ支持两种消息模式:点对点(Queue)和发布/订阅(Topic)。前者确保每条消息仅被一个消费者消费,后者允许多个消费者同时接收相同消息。
434 0
微服务——SpringBoot使用归纳——Spring Boot中集成ActiveMQ——ActiveMQ安装