【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

IBM 开源 API 微网关

  • 2017-05-09
  • 本文字数:959 字

    阅读完需:约 3 分钟

IBM 最近宣布开源他们的 API 微网关(Microgateway)。这意味着任何一个开发人员和组织现在都可以无偿在他们的项目里使用这个软件。

API 网关是处于 API 服务和消费者应用程序之间的一个软件层。这个层的作用是为 API 提供各种常见的服务,比如安全、速率限定,以及变更管理工具。IBM 的微网关采用 Node.js 开发,并采用了 Swagger 2.0 规范。这一软件的开源震惊了开发社区,因为 IBM、微软、谷歌等公司的 API 网关都不是免费的。IBM 的微网关与 IBM 的 DataPower Gateway 是不一样的,后者是另一个企业解决方案,更加侧重安全。

IBM API 微网关的主要特性是网络流量管理、方便实现安全标准(比如 OAuth),以及策略管理。它还有一个 API 设计器,提供了一个图形用户界面用于创建 YAML API 规范。它还包含了一个小型的数据存储引擎和一个健壮的工作流引擎,可以用于持久化基本的 API 数据模型,并基于 API 的消费行为创建复杂的策略。微网关为常见的场景提供了预置的策略,比如 API 秘钥验证、基本的授权和速率限定。

IBM 微网关把主要关注点集中在策略管理上。用户如果不打算使用预置的策略,可以使用“if”和“swtich”语句创建自定义的策略,这些语句是流管理的组成部分。IBM 的产品经理 Ozair Sheikn 在 IBM 博客上介绍了如何扩展这些策略,而不仅仅使用基本的条件语句,“如果你打算卷起袖子应用自己的逻辑,JavaScript 策略提供了非常大的灵活性”。预置的基本条件语句和 JavaScript 配置能力让用户可以使用网关来满足自己的业务需求,并自定义业务逻辑。

微网关的另一个关注点是 API 的定义识别和创建。内置了 Swagger 规范意味着可识别的 API 定义标准,用户可以使用底层的 Swagger 编辑器来创建基于 YAML 的规范。因为编辑 YAML 十分敏感,犹如在大风中组装一个纸牌做的房子,图形用户界面可以让这个过程不那么费时。开发人员可以借助这些工具在网关内部创建自己的 API 定义,也就有可能为消费者 API 的定义创建策略。不过,这个网关只能识别两种 API:REST 和 SOAP。使用这两种类型之外 API 的开发者得不到相关的支持。类似地,如果 Swagger 规范与现有的 API 生态系统不匹配,那么微网关就不会如预期那样健壮。不过,开源的优势在于,如果项目需要新增或改进某些功能,他们就会去寻找代码贡献者。

查看英文原文: IBM Open Sources their API Microgateway

2017-05-09 19:004677
用户头像

发布了 322 篇内容, 共 134.2 次阅读, 收获喜欢 144 次。

关注

评论

发布
暂无评论
发现更多内容

为什么mysql不推荐使用雪花ID作为主键

京东科技开发者

MySQL 数据 雪花id 主键 自增

参加大数据培训学习还来得及吗

小谷哥

DTSE Tech Talk 第13期:Serverless凭什么被誉为未来云计算范式?

华为云开发者联盟

云计算 后端 华为云

MobPush 推送查询API

MobTech袤博科技

效能工具如何在企业规模化落地?|线上沙龙回顾

万事ONES

SAP 异常现象之同一个IDoc可以被POST两次触发2张不同的物料凭证

SAP虾客

SAP IDoc BD87

3.面向复杂度的架构设计模式

程序员小张

「架构实战营」

ansible2.4安装和体验

程序员欣宸

DevOps ansible 11月月更

面试合集:数据库+数据结构+JVM+网络+JAVA+分布式+操作系统

钟奕礼

Java 程序员 java面试 java编程

磐久网络|揭秘阿里云HAIL数据中心网络

云布道师

阿里云 数据中心 基础设施建设

“读懂人话”,阿里AI总分首次超越人类成绩

云布道师

人工智能 阿里云

云安全系列4:解析云安全工具集

HummerCloud

云计算 云安全

又一创新!阿里云 Serverless 调度论文被云计算顶会 ACM SoCC 收录

Serverless Devs

前端培训程序员学习就业还有前途吗?

小谷哥

前端培训程序员不好招吗,应该怎么学习

小谷哥

供应链-数字化招投标/采购/供应商管理系统

金陵老街

数字化 Java‘’ Vue 3 spring-boot

Service Mesh 的下一站是 Sidecarless 吗?

SOFAStack

MOSN

我们又重写了一个关键服务

Zilliz

人工智能 Milvus 向量数据库

AI技术实践|用腾讯云慧眼微信浮层H5解决黄牛抢票问题

牵着蜗牛去散步

人工智能 腾讯云 腾讯 腾讯云AI

我代码就加了一行log日志,结果引发了P1的线上事故

小小怪下士

Java 程序员 log 代码

一个小而美的项目如何进行跨端选型

Onegun

移动端 跨端开发

web前端和java培训学编程哪个更好

小谷哥

如何通过链路追踪进行定时任务诊断

阿里巴巴云原生

阿里云 云原生 SchedulerX

java培训学习中怎么来提升开发水平

小谷哥

云小课|云小课教您如何选择Redis实例类型

华为云开发者联盟

云计算 后端 华为云

K3S +Helm+NFS最小化测试安装部署只需十分钟

京东科技开发者

Docker k8s 软件测试 k3s 应用程序

TCL 基于 StarRocks 构建统一的数据分析平台

StarRocks

#数据库

New Features | NFTScan 推出 BlueChip、Watch List、Activity Overview

NFT Research

区块链 NFT 数据基础设施

看知识图谱如何解锁隐藏的营销利器

Neo4j 图无处不在

算法 neo4j 图数据库 知识图谱 图数据

教你用JavaScript实现计数器

小院里的霍大侠

JavaScript 编程开发 初学者 入门实战

嵌入式系统概述及特点

timerring

嵌入式 11月月更

IBM开源API微网关_IBM_Margot Krouwer_InfoQ精选文章