我的springboot启动时,后台一直在打印mybati的sql语句,我看都是activity流程引擎里的库操作,有查询、删除操作,项目接口能访问,但是特别占用资源 不知道啥原因
3条回答 默认 最新
- 笑面虎 2024-05-11 18:19关注
以下内容由CHATGPT及笑面虎共同生成、有用望采纳:
您想要解决的问题: 您遇到的问题是在SpringBoot项目中引入了Activiti组件后,项目启动时后台不断执行数据库查询和删除操作,导致资源占用严重。
图片内容:
- 第一张图片显示了一个JDBC连接的打开和关闭过程,以及一个SQL查询的准备和执行,包括参数绑定和LIMIT/OFFSET的使用。
- 第二张图片包含了Activiti的配置信息,涉及到异步执行器的激活、流程定义的检查和部署、数据库架构更新策略以及历史数据保存级别的设置。
- 第三张图片显示了一个SQL查询的执行,包括参数绑定和查询结果。
问题出现原因: 问题可能出现的原因有:
- Activiti在启动时执行了数据库的初始化或更新操作,这可能包括创建或更新表、索引等。
- 配置文件中可能设置了
database-schema-update: true
,这会导致Activiti在启动时检查并更新数据库模式。 history-level: full
配置可能导致Activiti保存大量的历史数据,增加了数据库操作的频率。
问题解决方案:
- 优化Activiti配置:考虑将
database-schema-update
设置为false
,以防止不必要的数据库更新操作。 - 调整历史数据级别:如果不需要完整的历史数据,可以将
history-level
设置为audit
或更低级别,以减少数据库存储的负担。 - 审查Activiti流程定义:确保流程定义中没有不必要的数据库操作,或者是否有可能优化流程以减少数据库交互。
- 资源监控和调优:监控数据库连接池和线程池的使用情况,根据需要进行调优。
提供代码: 由于您提供的信息主要是配置和日志,而不是具体的代码问题,因此这里不提供具体的代码修改。但是,您可以考虑调整Activiti的配置文件,例如:
activiti: async-executor-activate: false check-process-definitions: false database-schema-update: false db-history-used: true history-level: audit process-definition-location-prefix: classpath*:/processes/**/*
代码运行方式: 您需要将上述配置添加或修改到您的SpringBoot项目的配置文件中(通常是
application.yml
或application.properties
),然后重新启动应用。代码预期运行结果: 预期结果是Activiti在启动时不再执行不必要的数据库操作,从而减少资源占用。
推荐相关链接:
解决 无用评论 打赏 举报 编辑记录
悬赏问题
- ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
- ¥15 安装quartus II18.1时弹出此error,怎么解决?
- ¥15 keil官网下载psn序列号在哪
- ¥15 想用adb命令做一个通话软件,播放录音
- ¥30 Pytorch深度学习服务器跑不通问题解决?
- ¥15 部分客户订单定位有误的问题
- ¥15 如何在maya程序中利用python编写领子和褶裥的模型的方法
- ¥15 Bug traq 数据包 大概什么价
- ¥15 在anaconda上pytorch和paddle paddle下载报错
- ¥25 自动填写QQ腾讯文档收集表