让我们来看一下典型微服务架构中的一些常见组件。
CDN是一组地理分布的服务器。CDN主要用于托管静态内容(图片、js文件等)。
可以将CDN服务器视为读取缓存服务器。
如果所请求的文件存在于该缓存服务器上,则立即返回。如果文件不存在,则CDN服务器会调用您的Web服务器来检索并缓存该文件,以供后续的请求使用。
好处:
改善读取延迟
提高读取扩展性
提高可靠性
使系统对抗DDoS攻击更具弹性
反向代理是位于一个或多个应用服务器前面的服务器。它保持原始服务器隐藏,保护服务器免受恶意客户端请求。
好处:
保护后端服务的隐私和安全性
安全性
负载均衡
负载均衡器是用于在一组实例之间平均分配传入请求的服务器。
负载均衡器确保没有单个服务器被过多的流量压垮,并提高系统的整体可用性和可靠性。
好处:
流量分发
健康检查
高可用性
可扩展性
API网关是反向代理的一种专门实现。它是一个服务器,作为从客户端到后端服务的所有API调用的单一入口点。
它用于将API请求路由到相应的服务实例。
好处:
请求路由
API管理
授权
速率限制
缓存
身份提供者负责用户管理和访问控制。
在允许访问后端服务之前,所有客户端的请求都需要进行身份验证。身份提供者将用户验证的任务抽象为一个可管理的独立服务。
好处:
身份验证
授权
访问控制
所有微服务实例都在共享位置(称为服务注册表)中注册自己。
服务注册表是一个组件,其中包含所有健康微服务实例的IP地址列表。
当新的请求到达时,API网关从服务注册表中读取此信息,获取所有可用的服务实例列表,并选择一个特定的实例向其发送请求。
缓存是一种用于更快地访问经常请求的资源/API的内存存储组件。
好处:
改善性能
减少延迟
提供更好的用户体验
一组小型的、独立的服务。
每个微服务代表一个自包含的功能单元,可以独立开发、部署和扩展。
每个服务由自己的团队拥有和维护。微服务可以托管在自己独立的域中。
好处:
模块化
可扩展性
自治性和灵活性
页面更新:2024-03-27
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号