服务发现问题

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

相关推荐
AlanBruce1 小时前
摩尔信使MThings IEC 60870-5-104数据配置使用指南
网络·网络协议·tcp/ip
隐擎fox9 小时前
高性能网络爬虫架构设计:基于 Python 的长连接复用与分布式会话池调度实践
分布式·python·网络协议·tcp/ip·高并发·网络爬虫、
IT摆渡者11 小时前
1panel 配置申请手动解析网站SSL证书
服务器·网络协议·ssl
易岳群11 小时前
物联网 MQTT 方案:服务端如何通过 MQTT 生命周期维护客户端设备状态
物联网·网络协议
2501_9378609416 小时前
网络核心|OSI七层、TCP/IP五层模型,封装和分用详解
网络·网络协议·tcp/ip
宵时待雨17 小时前
linux笔记归纳18:传输层协议TCP
linux·网络·笔记·网络协议·tcp/ip
captain37618 小时前
▲网络原理(1)-UDP
网络·网络协议·tcp/ip
开开心心就好19 小时前
清理此电脑网盘图标工具,开源免费好用
网络·网络协议·tcp/ip·智能手机·电脑·scala·erlang
企业数字化笔记20 小时前
AI写的网站一直自动跳转怎么办?301、302和HTTPS重定向排查
网络协议·http·https
IT摆渡者21 小时前
1panel 针对HTTP自动续签SSL网站证书
网络协议·ssl·openresty