服务发现问题

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

相关推荐
上海云盾-小余24 分钟前
七层与四层防护区别:WAF 与高防 IP 选型实战攻略
网络协议·tcp/ip·系统安全
kels88991 小时前
WebSocket 汇率数据:如何剔除过期行情
网络·websocket·网络协议
X7x52 小时前
广域网技术全解:从 CE/PE/P 设备到 PPP/PPPoE 协议与三厂商配置实战
网络·网络协议·信息与通信·广域网技术
想成为优秀工程师的爸爸2 小时前
车载以太网之要火系列 - 番外篇4:从DoIP到SOME/IP,一个初学者的“越级碰瓷”
网络协议·车载以太网
是小章啊3 小时前
Jmeter压测实战之HTTP_POST
网络协议·jmeter·http
半壶清水3 小时前
windows环境下,bmv2虚拟交换机的部署与使用方法
网络·windows·python·网络协议
zjun10013 小时前
TCP专栏-3.三次握手
网络·网络协议·tcp/ip
liulilittle3 小时前
SA6400内核5.10编译TCP_BBR的具体方法整理
chrome·网络协议·tcp/ip
西西弟3 小时前
网络编程基础之TCP多线程并发服务器
服务器·网络·网络协议·tcp/ip