java - Spring Boot Java 应用程序内存
问题描述
我使用 spring boot 应用程序制作了一个应用程序,并使用可视 VM 测试了它的内存消耗。我的应用程序堆大小不断增加,而使用的堆大小却在波动。共享统计信息:当应用程序启动时:HeapSize = 700mb 并且使用的 HeapSpace 为 500。当我通过打 200 次休息调用来使用应用程序时。统计数据为 HeapSize = 1200mb,但这次 usedHeapSpace 图下降,usedHeapSpace 为 500。Visual VM 仪表板的屏幕截图
附件是我停止服务的屏幕截图。
请谁能告诉我如何控制这个内存使用,因为内存大小没有限制,这将结束我的服务器的整个内存,因为我将它停止到 1800mb
解决方案
我们可以通过多种方式调整 JVM 内存的使用情况。首先,我们可以使用参数来控制堆大小:
java -Xms512m -Xmx2048m
-Xms 这指定最小内存开始
-Xmx 可用于我们的应用程序的最大内存
有关更多详细信息,请遵循以下 Oracle: https ://docs.oracle.com/cd/E21764_01/web.1111/e13814/jvm_tuning.htm#PERFM150
推荐阅读
- json - 在 Jinja2 模板中循环 Ansible 变量数组以创建嵌套字典
- jsdoc - 如何使用 JSDoc 注释返回此副本的方法?
- python - Python 解码 | 字节到 json
- node.js - ScrollConsoleScreenBuffer 影响裁剪矩形外的数据
- sql - 是否可以在 SQL Server 中使用通配符作为 OPENJSON 的参数?
- swift - 如何在后台强制 macOS 应用程序更新?
- android - NoSuchFieldException:类 Landroid/widget/ImageView 中没有字段 mMaxWidth
- git - 我在 git 中一次提交了 10 个文件,但现在我怎样才能只恢复其中的 2 个
- reactjs - 在useState问题之前调用react useCallback
- rust - 如何在 Rust 中按值返回结构?