服务发现问题

对于 RESTful API 来讲,我们已经解决了传输协议的问题------基于 HTTP,协议约定问题------基于 JSON,最后要解决的是服务发现问题。

有个著名的基于 RESTful API 的跨系统调用框架叫 Spring Cloud。在 Spring Cloud 中有一个组件叫 Eureka。传说,阿基米德在洗澡时发现浮力原理,高兴得来不及穿上裤子,跑到街上大喊:"Eureka(我找到了)!"所以 Eureka 是用来实现注册中心的,负责维护注册的服务列表。

服务分服务提供方,它向 Eureka 做服务注册、续约和下线等操作,注册的主要数据包括服务名、机器 IP、端口号、域名等等。

另外一方是服务消费方,向 Eureka 获取服务提供方的注册信息。为了实现负载均衡和容错,服务提供方可以注册多个。

当消费方要调用服务的时候,会从注册中心读出多个服务来,那怎么调用呢?当然是 RESTful 方式了。

Spring Cloud 提供一个 RestTemplate 工具,用于将请求对象转换为 JSON,并发起 Rest 调用,RestTemplate 的调用也是分 POST、PUT、GET、 DELETE 的,当结果返回的时候,根据返回的 JSON 解析成对象。通过这样封装,调用起来也很方便。

此文章为10月Day5学习笔记,内容来源于极客时间《趣谈网络协议》,推荐该课程。

相关推荐
萌萌哒草头将军44 分钟前
CloudDock(云仓):新一代开源NAS网络代理工具
服务器·网络协议·docker
不知名。。。。。。。。8 小时前
HTTP协议
网络·网络协议·http
mounter6258 小时前
【高性能网络】Devmem TCP 深度拆解:打破 100G 网络的“CPU 搬运墙”与延迟瓶颈
网络·网络协议·tcp/ip·kernel·devmem tcp
达不溜的日记9 小时前
AutoSAR通信概述-DBC文件
网络协议·信息与通信·信号处理
jinanwuhuaguo9 小时前
OpenClaw、Agent、Skill、MCP 深度解读与区分分析
网络·人工智能·网络协议·rpc·openclaw
liulilittle9 小时前
静态隧道 UDP 限制与绕过:以 DMIT 机房为例
网络·网络协议·udp
一条闲鱼_mytube9 小时前
【深入理解】HTTP/3 与 QUIC 协议:从原理到 Go 语言实战
网络协议·http·golang
香蕉鼠片10 小时前
TCP确认应答,超时重传,滑动窗口,流量控制,拥塞控制,延迟应答,捎带应答
服务器·网络协议·tcp/ip
深念Y11 小时前
前端实时通信技术:HTTP轮询、SSE、WebSocket、WebRTC
前端·websocket·网络协议·http·实时互动·轮询·实时通信
DYuW5gBmH21 小时前
FastAPI 实战:WebSocket 从入门到上线,使用避坑指南
websocket·网络协议·fastapi