
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
我们在前几期的文章中给大家简单介绍了程序员在学习微服务架构开发的时候需要掌握的一些基础知识等内容,而本文我们就继续来学习一下,微服务服务发现设计方法都有哪些。
1、服务发现
服务的IP地址不能在客户端静态配置。需要使用动态服务发现。从概念上讲,服务发现非常简单,它的主要组件是一个服务注册表,它包含一个应用程序服务实例的网络位置列表。
当服务实例启动和停止时,服务注册表会更新。服务发现机制通过查询服务注册表以获取可用服务实例的列表,并在客户端调用服务时将请求路由到其中一个。
2、应用程序级服务发现模式
应用程序的服务及其客户端可以与服务注册中心交互以实现服务发现。每个服务实例向服务注册表注册其网络位置,在调用服务之前从服务注册中心请求服务实例列表。然后,客户端向其中一个实例发送请求。
3、应用层服务发现的缺点
需要特定语言的服务发现库。
需要运维人员维护设置和管理服务注册表。
当服务实例正在运行但不处理请求时,会出现从服务注册中心遗漏注销的可行性。
4、平台提供的服务发现模式
许多部署平台例如Docker和Kubernetes,都内置了服务注册表和服务发现机制。每个服务都分配有一个DNS名称、一个虚拟IP(VIP)地址和一个解析为VIP地址的DNS名称。
服务客户端请求DNS名称/VIP,部署平台自动将请求路由到可用服务实例。这样服务注册、服务发现、请求路由等全部由部署平台处理。服务注册表跟踪部署平台中已部署服务的IP地址。
5、基于平台的服务发现的好处
部署平台处理服务发现的所有工作。
服务和客户端都不包含任何用于服务发现的代码。
服务发现对所有服务和客户端都可用,无论它们是用什么语言编写的。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。