azure-api-management - Azure API 管理和微服务
问题描述
Azure API 管理能否满足以下要求,或者我是否需要将应用程序网关与 Azure API 管理一起使用?
- 将流量路由到各种微服务
- 应对流量需求和扩展
- 支持 API 版本控制
微服务托管在 Azure 应用服务上。
谢谢
解决方案
API Management 是否可以做到这一点,取决于您对这些要求的确切含义。
将流量路由到各种微服务正如您提到的微服务是 Azure Web 应用程序,我假设您的意思是根据不同的端点路由到不同的微服务。您可以根据内容将请求路由到某个端点。
应对流量需求和扩展 Azure Web 应用默认是可扩展的,由流量管理器负责。APIM 只能处理流量需求并扩展到平台本身。您可以扩大或扩大规模,甚至可以根据规则自动化。但是,由于扩展可能需要一些时间,因此建议监控容量指标以适应不断增加的负载。
支持 API 版本控制 APIM“只是”客户和 API 之间的一个虚拟化层。因此,只有在您实际对 API 进行版本控制时,在 APIM 上进行 API 版本控制才有意义。在 APIM 中,您可以创建版本集,根据标头、路径或查询字符串指定 API 的版本控制策略。API 可以基于版本集部署在 APIM 中,这使其成为版本化 API。
推荐阅读
- r - 如何创建具有 3 个新列(每个列来自不同数据集)的数据集并重命名它们?
- algorithm - 如果我们想最大化 αβ-剪枝的好处,应该如何扩展树?
- android - 代号一号问题:代号一号专业账号订阅到期后,iOS应用中的推送通知服务会怎样?
- scala - SparkMap[RDD] - 映射到Many-One
- php - Doctrine expr - “文字”函数是否在内部使用准备好的语句?
- regex - 我想访问四个 FASTA 文件,从标题行打印有机体名称?
- java - 如何配置 DefaultMessageListenerContainer 仅在我们的 MessageListener 确认时才提交消息?
- javascript - 如何为 passport-azure-ad 生成 privatePEMKey 和指纹
- laravel - 如何使用 laravel 将产品显示到相关类别
- python - 如何在 python 特定的 ValueError 中引发?