News

API管理入门:什么是API管理?

那些知道API管理平台是什么以及它们可以做什么的人往往在开发API时总是使用它们。它是开发、保护、发布和支持API所必需的工具之一。现在,如果你正在阅读这篇文章,那么你可能不知道什么是API管理,或者你有一个非常模糊的概念,想知道更多。你来对地方了!

不管您一直在做什么,如果它涉及API,那么您可能已经熟悉了API管理可以执行或增强的一些功能。根据我的经验,如果要用一句话来概括API管理,那就是:一组功能或特性,帮助构建、保护、监控和支持API以及为其提供动力的服务。API管理平台就是一个在一个地方拥有所有这些功能的系统!

API管理平台有什么作用?

当我们想到API时,我们通常根据它们提供的服务来描述它们。例如,如果我有一个API,用于检索用户及其帐户的详细信息,那么我可以将此API称为“用户详细信息”API。我们经常忘记的是,在这个API的幕后有许多活动部件,它们不一定在“检索用户和帐户详细信息”中发挥直接作用,但在现代API中仍然是必要的。我说的是什么样的棋子?这些移动件可包括:

  • 认证和授权

确保访问API的用户是他们所说的用户,并且他们被授权使用API

  • 测试

记录访问API的用户、他们的请求包含的内容以及来自API的响应

  • 变换

有时请求或响应中的数据需要进行转换或操作,以便由上游服务进行处理

  • 费率限制和配额

强制执行使用规则,以确保访问API的用户在调用API的次数方面不超过允许的限制

  • 开发人员访问

用户将如何加入,以便他们能够实际使用API

  • 监视和警报

能够在使用API时监控API流量和错误,并在发生特定事件时向管理员发出警报

  • 报告

创建报告以检查API性能、使用情况等

API管理平台允许您解决和实施上述所有问题以及更多问题。这一切都可以在一个地方完成,而不需要在您的服务代码中直接配置和编码所有这些需求。

API管理平台由什么组成?

API管理平台的主要集线器是API网关。该组件完成了所有繁重的工作,并且是上述所有功能实际执行的地方!大多数API管理平台包括一个网关,还包括一些其他组件,以帮助更轻松地配置网关和管理API。这些组成部分包括:

  • UI使用

这是您可以配置您的网关使用上述功能,如速率限制,转换等。仪表板提供了一个易于使用的界面,无需编写自己的配置文件

  • 开发者门户

在这里,您可以公开您的API,开发人员可以订阅您的API,以便他们可以使用它们,例如幂简集成。通过API平台,开发人员门户可以帮助完成一系列开发人员自助服务任务,包括允许开发人员注册、生成他们自己的API访问令牌等等。

为什么要使用API管理平台?

简化代码和服务

当使用APIM解决方案时,您可以构建您的服务来只做需要做的事情,并将这些服务的管理留在代码库之外。无需将安全性、速率限制或转换到代码中。这意味着服务变得更容易管理,因为它们更简单,并且还意味着API的管理更容易配置,并且还非常容易地应用于新的和现有的API。从事服务的开发人员现在可以更快地构建为组织提供动力所需的功能,而不必配置与他们正在制作的组件的核心功能无关的所有细节。与在每个单独的服务中执行这些任务相比,可以更轻松、更高效地将这些任务卸载到API管理平台。当应用于微服务开发时,这显然非常出色,其中许多服务需要保护和维护。

更安全的实施和维护

随着越来越多的API被构建,安全性变得越来越复杂。随着越来越多的服务被构建,所使用的安全机制可能会因开发人员、团队或组织的区域而异。这给开发人员带来了额外的压力,要求他们努力遵守当前的组织标准,但也给支持和维护团队带来了压力,他们可能必须了解所有的单独实现。通过将此安全层从API服务本身中抽象出来并将其移动到APIM层,这些问题变得更少,并且在整个API组合中实现健壮和统一的安全性变得更容易,成本更低,并且不太可能由于开发人员的错误而导致安全漏洞。

更好地了解API使用情况

  1. 由于延迟影响用户体验,客户/用户满意度
  2. 了解当前系统问题
  3. 由于不知道API遇到的实际流量/错误量,支持预算不足
  4. 在糟糕的指标收集和报告的许多其他副作用中

当尝试将来自多个单独API资源的日志、警报和指标汇集在一起时,可能很难确保您拥有所需的所有数据以及解释这些数据的正确工具。使用API管理平台收集和管理此数据是确保您所需的所有数据可用、正确且易于查找的可靠方法。

这些只是几个例子,但是还有很多其他原因可以说明为什么使用这些技术可以以各种可能的方式改善您的API体验。

原文链接:https://tyk.io/blog/api-management-101-what-is-api-management/

Keyword: webp转换为png

Leave a Reply

Your email address will not be published. Required fields are marked *