0

0

适用于 Java 的 AWS 开发工具包的 Amazon Aurora Serverless 数据 API - 冷启动和热启动的部分优化策略

WBOY

WBOY

发布时间:2024-07-09 19:37:34

|

432人浏览过

|

来源于dev.to

转载

适用于 java 的 aws 开发工具包的 amazon aurora serverless 数据 api - 冷启动和热启动的部分优化策略

介绍

在本系列之前关于如何使用 Data API 和 AWS SDK for Java 从 Lambda 函数连接到 Amazon Aurora Serverless v2 的文章中,我们进行了基本的冷启动和热启动测量,比较了 Data API 和 JDBC 之间的冷启动和热启动并进行了测量SnapStart 在有或没有底漆的情况下都有效果。

在本系列的这一部分中,我们将介绍冷启动和热启动的优化策略。

冷启动和热启动的优化策略

为了在冷启动时间和热启动时间之间找到良好的平衡,您可以尝试下面介绍的优化技术。我尚未对使用 Data API 和 Amazon Aurora Serverless v2 与 PostgreSQL 数据库的测量进行任何测量,但使用 DynamoDB 数据库进行类似的场景。我会提供我的相关文章的参考。

  • 尝试不同的 Lambda 内存设置。到目前为止,所有测量都是使用 Lambda 函数的 1024 MB 内存执行的。通过不同的内存设置,您可能会以合理的价格获得更好的性能。请参阅我的文章使用不同的 Lambda 内存设置使用 Java 21 测量冷启动和热启动以及部署时间,以了解使用 DynamoDB 进行测量的说明。
  • 尝试 Lambda 函数的不同 Java 编译选项。到目前为止,所有测量都是使用 Lambda 函数的编译选项“-XX:+TieredCompilation -XX:TieredStopAtLevel=1”执行的。可以使用名为 JAVA_TOOL_OPTIONS 的环境变量向 Lambda 函数提供更多其他选项,该变量可以具有不同的冷启动和热启动权衡。请参阅我的文章“使用 Java 21 使用不同的编译选项测量冷启动和热启动”,以了解使用 DynamoDB 进行测量的说明。
  • 尝试不同的同步 HTTP 客户端通过 Data API 建立与数据库的 HTTP 连接。到目前为止,所有测量都是使用默认的同步 HTTP 客户端(Apache)执行的。还有其他选项,例如 UrlConnection 和 AWS CRT HTTP 客户端,它们为冷启动和热启动提供不同的性能权衡。

这是创建/构建 RdsDataClient 时使用 AWS CRT HTTP 客户端的示例。 URLConnection客户端可以类似地设置。

RdsDataClient.builder().httpClient(AwsCrtHttpClient.create()).build()

另外不要忘记将对正在使用的 HTTP 客户端的依赖项包含到 pom.xml 中,如下所示:

<依赖>
        software.amazon.awssdk
        aws-crt-client
     

请参阅我的文章“使用不同同步 HTTP 客户端从 Java 21 测量冷热启动”,以获取说明、代码示例和使用 DynamoDB 进行测量。

立即学习Java免费学习笔记(深入)”;

RecoveryFox AI
RecoveryFox AI

AI驱动的数据恢复、文件恢复工具

下载
  • 探索数据 API 的异步 HTTP 客户端是否适合您的用例。默认的异步 HTTP 客户端是 NettyNio。还有另一个选项 AWS CRT 异步 HTTP 客户端,它为冷启动和热启动提供不同的性能权衡。

这是在创建/构建 RdsDataAsyncClient 时使用异步 AWS CRT HTTP 客户端的示例(我们需要在使用异步 HTTP 客户端的情况下构建)。

RdsDataAsyncClient.builder().httpClient(AwsCrtAsyncHttpClient.create()).build()

另外不要忘记将对正在使用的 HTTP 客户端的依赖项包含到 pom.xml 中,如下所示:

<依赖>
        software.amazon.awssdk
        aws-crt-client
     

在这种情况下,我们必须使用 Java 异步编程模型(这本身就是讨论主题),因此 RDSDataAsyncClient 上的每个方法调用都将返回 Java CompletableFuture 对象。请参阅我的文章使用不同的异步 HTTP 客户端通过 Java 21 测量冷启动和热启动,以获取说明、代码示例和使用 DynamoDB 的测量。

对于所有潜在的优化策略,您可以在 Lambda 函数上启用 SnapStart,并另外测量 DynamoDB 调用启动的影响,如本系列的上一篇文章 Data API meet SnapStart 中所述。

还要注意我在文章中描述的快照分层缓存对冷启动的影响。因为我总是在部署新版本的 Lambda 函数后提供 first 100 次冷启动测量。在使用分层缓存的情况下,我测量并描述了冷启动随着更多后续调用而显着减少。经过一定数量的调用后,它对于特定的 Lambda 版本保持不变。

结论

在本文中,我们使用 Amazon Aurora Serverless v2 的数据 API 和适用于 Java 的 AWS 开发工具包提供了冷启动和热启动的优化策略,您可以探索该策略以找出适合您的使用案例的最佳性能。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
pdf怎么转换成xml格式
pdf怎么转换成xml格式

将 pdf 转换为 xml 的方法:1. 使用在线转换器;2. 使用桌面软件(如 adobe acrobat、itext);3. 使用命令行工具(如 pdftoxml)。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

1900

2024.04.01

xml怎么变成word
xml怎么变成word

步骤:1. 导入 xml 文件;2. 选择 xml 结构;3. 映射 xml 元素到 word 元素;4. 生成 word 文档。提示:确保 xml 文件结构良好,并预览 word 文档以验证转换是否成功。想了解更多xml的相关内容,可以阅读本专题下面的文章。

2091

2024.08.01

xml是什么格式的文件
xml是什么格式的文件

xml是一种纯文本格式的文件。xml指的是可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。想了解更多相关的内容,可阅读本专题下面的相关文章。

1064

2024.11.28

lambda表达式
lambda表达式

Lambda表达式是一种匿名函数的简洁表示方式,它可以在需要函数作为参数的地方使用,并提供了一种更简洁、更灵活的编码方式,其语法为“lambda 参数列表: 表达式”,参数列表是函数的参数,可以包含一个或多个参数,用逗号分隔,表达式是函数的执行体,用于定义函数的具体操作。本专题为大家提供lambda表达式相关的文章、下载、课程内容,供大家免费下载体验。

207

2023.09.15

python lambda函数
python lambda函数

本专题整合了python lambda函数用法详解,阅读专题下面的文章了解更多详细内容。

191

2025.11.08

Python lambda详解
Python lambda详解

本专题整合了Python lambda函数相关教程,阅读下面的文章了解更多详细内容。

53

2026.01.05

postgresql常用命令
postgresql常用命令

postgresql常用命令psql、createdb、dropdb、createuser、dropuser、l、c、dt、d table_name、du、i file_name、e和q等。本专题为大家提供postgresql相关的文章、下载、课程内容,供大家免费下载体验。

158

2023.10.10

常用的数据库软件
常用的数据库软件

常用的数据库软件有MySQL、Oracle、SQL Server、PostgreSQL、MongoDB、Redis、Cassandra、Hadoop、Spark和Amazon DynamoDB。更多关于数据库软件的内容详情请看本专题下面的文章。php中文网欢迎大家前来学习。

978

2023.11.02

俄罗斯Yandex引擎入口
俄罗斯Yandex引擎入口

2026年俄罗斯Yandex搜索引擎最新入口汇总,涵盖免登录、多语言支持、无广告视频播放及本地化服务等核心功能。阅读专题下面的文章了解更多详细内容。

158

2026.01.28

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
RunnerGo从入门到精通
RunnerGo从入门到精通

共22课时 | 1.7万人学习

尚学堂Mahout视频教程
尚学堂Mahout视频教程

共18课时 | 3.2万人学习

Linux优化视频教程
Linux优化视频教程

共14课时 | 3.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号