performance - spring r2dbc 的性能问题
问题描述
问题:仅在前 1 秒内观察到缓慢,其余 59 秒的响应时间恒定,比最大响应时间好 90%。
Server Env 详细信息:带有 r2dbc 池的 spring boot webflux 部署在 ECS fargate 中并连接到 Postgres Aurora 集群。池设置 - maxSize,initialSize 为 200 使用 spring data r2dbc 并启用代理侦听器进行调试。
客户端:在同一 VPC 中的 AWS EC2 中配置了一个具有 200,250,300,500 个用户且斜坡时间为 50 秒的最小负载的加特林脚本。
设想
- ECS 服务器已启动。
- 等待 4 分钟。
- 使用邮递员对 5 个请求进行了空运行。
- 使用加特林触发负载
- 关闭弹性云服务器。
- 对不同数量的用户重复这些步骤。
该行为与不同的用户一致。总是前 1 分钟的响应最慢,响应时间最长。 后续运行无需重新启动服务器具有良好的性能,没有任何延迟。
总计|OK |KO|Cnt/s|最小值|第 50 个百分比|第 75 个百分比|第 95 个百分比|第 99 个百分比|最大值|平均值|标准偏差|
500 |500 |0 |9.804|94 |184 |397 |1785 |2652 | 2912 | 417 | 第556章
并且还在日志中观察到,对于具有最大响应时间的请求,记录的这两条即时行之间的时间差为 168 毫秒。-- 执行查询:BEGIN -- io.r2dbc.spi.Connection.beginTransaction 在 ConnectionFactory#create() 回调
任何建议如何解决/解决问题?
谢谢。
解决方案
推荐阅读
- android - 当我尝试使用启动器主题应用启动画面时应用程序崩溃
- javascript - 如何取消使用 JavaScript 上传文件但人可以在 Ajax 请求中提交其余的表单字段
- sql - 卖房的SQL数据模型
- go - GORM golang 删除 SET NULL
- wordpress - 从 Wordpress 中自定义帖子类型的类别中获取 ACF 文本字段值
- c++ - 在c ++中查找没有循环的字符串中的数字总和
- php - MYSQL LEFT JOIN 未按预期工作未显示左表中的所有行
- wpf - 如何在 WPF 中更改 ScrollBar 的样式
- javascript - 一些 Bootstrap 组件在 ReactJS 中不起作用
- flutter - 是否有在颤振应用程序中绘制音频波形的库