Amazon推出API网关使用计划

Amazon升级了API网关服务,推出使用计划功能,可根据不同访问级别和用户分类管理并货币化API。该功能支持节流、限额等设置,并能通过API密钥层计费。

近日,Amazon升级了他们的API网关服务,推出了API网关“使用计划(Usage Plans)”。借助使用计划,Amazon API网关客户可以根据不同的访问级别和用户分类管理和货币化他们的API。通过第三方开发者生态系统将API货币化,是企业暴露API时经常采用的模式之一。使用计划让组织可以管理第三方开发人员的消费模式,实现API密钥层计费。

\\

Amazon首次推出API网关服务是在2015年7月,其目的是为组织提供一种方法,让他们可以保护和管理运行在AWS Lambda、EC2及托管在公共端点上的API。现在,该服务已经完成了升级,通过使用计划提供了粒度更细的API管理。具体来说,使用计划可以指定到不同的访问级别,比如Bronze、Silver和Gold。它们还可以指定到不同的用户类别,包括学生、个人、专业人士或企业。借助使用计划,API网关客户现在可以控制如下API参数

\\
\
  • “节流(Throttling)”——总体请求速率(平均每秒的请求数)和突发流量; \\
  • 限额——每天、周或月的请求数; \\
  • API/Stage——可以访问的API和API Stage。\
\\

使用计划可以通过API网关控制台创建。在使用计划里,管理员可以启用节流进程,限制API每秒请求数和突发请求数。使用计划还允许为预定义时间范围内的请求总数设定限额或上限。

\\

在最近的一篇博文中,Amazon Web Services首席宣传官Jeff Barr对Amazon如何实现节流进行了解释:

\\
\

节流是使用令牌桶模型实现的。该桶足以容纳由Burst值表示的令牌数量,并按照指定的速率获取新的令牌。每个API请求会从桶中移除一个令牌。使用令牌桶让你的API可以支持一个稳定的请求流,并能够适应偶然出现的突发流量。

\
\\

从业务和技术的角度看,节流可以确保计划级别低的客户不会引入性能问题,中断计划级别更高的客户的API调用。

\\

e1534c625fcffc934bf7804337fd8e3a.png

\\

图片来源:https://aws.amazon.com/blogs/aws/new-usage-plans-for-amazon-api-gateway/

\\

当一个API客户因为计划外的消费即将超出当月的限额时,可以通过临时扩展的方式避免服务中断。

\\

f01e1f000f40441b257e6d8d09147900.png

\\

图片来源:https://aws.amazon.com/blogs/aws/new-usage-plans-for-amazon-api-gateway/

\\

使用计划可以在不同的API网关Stage中实现。Amazon创建了Stage,使得计算环境的管理可以彼此独立,比如测试和生产环境。如果组织将API托管在了一个功能不够强大的测试环境中,那么他们可能会希望针对那个Stage或环境里的API客户执行不同的策略。

\\

由于Amazon现在是在API密钥层测量使用情况,所以他们也能够通过“导出使用数据(Export Usage Data)”特性提供消费数据。管理员可以指定数据范围和消费数据格式,包括JSON或CSV。这些信息后续可以作为计费依据提供给API客户。

\\

0528682adbba39c9d1b1413da820e61f.png

\\

图片来源:https://aws.amazon.com/blogs/aws/new-usage-plans-for-amazon-api-gateway/

\\

测量消费、节流和限额不是Amazon API网关特有的东西。这是一些主流的API管理特性,在竞争对手提供的服务里也可以找到,其中包括微软的Azure API管理服务。微软是通过在不同的范围级别(产品、API或操作)上使用不同的策略来实现节流和限额。消费跟踪则是在开发者、产品、订阅、API和操作级别上进行。

\\

查看英文原文:Amazon Introduces API Gateway Usage Plans

内容概要:本文系统阐述了Java Persistence API(JPA)的核心概念、技术架构、核心组件及实践应用,重点介绍了JPA作为Java官方定义的对象关系映射(ORM)规范,如何通过实体类、EntityManager、JPQL和persistence.xml配置文件实现Java对象与数据库表之间的映射与操作。文章详细说明了JPA解决的传统JDBC开发痛点,如代码冗余、对象映射繁琐、跨数据库兼容性差等问题,并解析了JPA与Hibernate、EclipseLink等实现框架的关系。同时提供了基于Hibernate和MySQL的完整实践案例,涵盖Maven依赖配置、实体类定义、CRUD操作实现等关键步骤,并列举了常用JPA注解及其用途。最后总结了JPA的标准化优势、开发效率提升能力及在Spring生态中的延伸应用。 适合人群:具备一定Java基础,熟悉基本数据库操作,工作1-3年的后端开发人员或正在学习ORM技术的中级开发者。 使用场景及目标:①理解JPA作为ORM规范的核心原理与组件协作机制;②掌握基于JPA+Hibernate进行数据库操作的开发流程;③为技术选型、团队培训或向Spring Data JPA过渡提供理论与实践基础。 阅读建议:此资源以理论结合实践的方式讲解JPA,建议读者在学习过程中同步搭建环境,动手实现文中示例代码,重点关注EntityManager的使用、JPQL语法特点以及注解配置规则,从而深入理解JPA的设计思想与工程价值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值