amazon-web-services - 将 WSO2 定义迁移到 AWS API Gateway?
问题描述
免责声明:我对 API 开发的知识几乎为零。
目标不是编写 API,而是移植现有定义。
我们当前的 API 设置是驻留在 3 个不同 EC2 实例中的 WSO2 集群 API 管理器。一个用于发布者和商店,一个用于网关,一个用于密钥管理器。
我已经花时间查看了配置,所以我至少知道这三个组件是如何相互“对话”的。
到目前为止,我发现 API 定义位于路径“*/gateway/repository/deployment/server/synapse-configs/default/api/”中的某个位置,并且其中有定义 API 的 XML。通读一遍,这些字段似乎与我在 AWS API Gateway 中看到的字段相同。所以我知道一定有办法把它们移植过来。
然而,除此之外,我完全不知道下一步是什么。我应该对 API 有多深的理解才能成功地做到这一点?是否有可用于将 API 导入 AWS API Gateway 的工具?还是从 WSO2 导出?我有点卡住了,因为我现在能看到的唯一对我有帮助的是学习 WSO2 和 API 定义,但由于时间限制,我们没有足够的时间来做这件事。
朝着正确方向迈出的任何一步都将不胜感激。谢谢!
编辑:我们正在考虑迁移的原因是因为维护一直是一场噩梦。每当我们必须进行一些定期清理时,我们都会遇到很多关于 API 的关键问题,更不用说 3 个 EC2 实例也会让我们付出代价,因此我们正在寻找更轻量级、更易于维护的选项.
解决方案
如果您只需要迁移 API 定义,您可以尝试使用 Swagger 文件(即 OpenAPI 定义)[1] 将 API 导入 API Gateway。
您可以尝试从 WSO2 API 管理器中导出 Swagger 文件吗?如果是,您可以按照 [1] 中的说明在 API 网关中导入 API。
关于 API Manager 的整体迁移(即 API 定义、端点定义、安全策略、缓存/节流策略等),我建议您进行适当的可行性研究,以确保您的 API Manager 中使用的功能是否可以被翻译成 API Gateway 提供的功能。
[1] https://docs.aws.amazon.com/apigateway/latest/developerguide/import-export-api-endpoints.html
推荐阅读
- selenium - 替代已弃用的 Firefox 操作 API
- mysql - MySQL插入忽略重复但因外键错误而失败
- react-native - 如何在 redux-action 中导航?
- rounding - terraform 是否支持数学舍入?
- ios - Linphone linphone_core_iterate 崩溃
- mysql - 在我的 Mac 上安装了 MySQL,并删除了全局 npm、gulp 等。保存 npm 的步骤?
- audio - Google Cloud Text-to-Speech Interface Confusion(如何下载 mp3 文件?)
- java - 为什么这个 java 代码表现出奇怪的行为?
- c# - 当 T 可以是多个 new () 类型时,如何生成一个方法?
- sql-server-2012 - 在 nvarchar(max) 列上创建索引