服务发现问题

对于 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学习笔记,内容来源于极客时间《趣谈网络协议》,推荐该课程。

相关推荐
静心观复1 小时前
从短连接到 gRPC:一文读懂 HTTP 连接模型的演进
网络·网络协议·http
w1wi4 小时前
【Vibe Coding】TCP/UDP包篡改重放工具
人工智能·网络协议·tcp/ip·ai·udp·ai编程
treesforest4 小时前
IP地址段查询完全指南:从单IP查到IPv4段批量归属地查询
网络·数据库·网络协议·tcp/ip·网络安全·运维开发
wangl_924 小时前
Modbus RTU 与 Modbus TCP 深入指南-字节顺序与跨平台问题
网络·网络协议·tcp/ip·tcp·modbus·rtu
wefg14 小时前
【计算机网络】DNS/ICMP协议/ping指令
网络·网络协议·计算机网络
花间相见5 小时前
【全栈开发03】—— curl 常用参数详解与 HTTP 请求实战
网络·网络协议·http
S1998_1997111609•X5 小时前
哈希树函数洪水泛滥污染孪生镜像导致生物量子信息泄露以钩子而爬虫植入ssd探测
爬虫·网络协议·缓存·哈希算法·开闭原则
原来是猿6 小时前
应用层【协议再识/序列化与反序列化】
linux·运维·服务器·网络·网络协议·tcp/ip
报错小能手7 小时前
HTTP/2 牛逼在哪?
网络·网络协议·tcp/ip·http
pengyi8710157 小时前
安全性深度对比,HTTP与HTTPS代理风险差异分析
网络协议·http·https