java - 尝试使用 Postman 导致内存不足异常
问题描述
我正在尝试测试一个简单的脚本,如果遇到内存不足错误,它将终止并重新启动服务。服务本身执行完整的 CRUD 操作,并在其启动脚本中定义的 JVM 选项中调用脚本。
在 start.sh 脚本中:
DEFAULT_JVM_OPTS='"-Xmx512m" "-Dapp.name=app-service" "-XX:OnOutOfMemoryError=./oom.sh" "-Dspring.profiles.active='"$1"'"'
exec nohup "$JAVACMD" $DEFAULT_JVM_OPTS -jar $CLASSPATH > stdout.out 2> stderr.err &
在 oom.sh
#!/usr/bin/env sh
kill %p;
echo "service out of memory"
sleep 5
echo "Restarting service"
./start.sh profileName
我现在最大的问题实际上是通过引发 OOM 错误来测试脚本。从理论上讲,会发生的情况是 oom.sh 脚本将被调用,杀死然后重新启动服务。我尝试使用 Postman Runner 发送 500 个获取所有请求,但没有成功。有谁知道更好的方法来做到这一点?
解决方案
Java Service Wrapper 会起作用吗?它旨在处理您的应用程序应该运行的各种场景,但由于某种原因不是(包括内存不足)。这也是相当的战斗力。https://wrapper.tanukisoftware.com
您可能有特定的原因/要求反对使用 Wrapper 之类的东西,但如果您还没有,那么值得一看。
推荐阅读
- sql - 在带有字符串和日期的循环中使用 Dlookup 的语法
- autodesk-forge - 通过 Autodesk API 上传项目配置文件图像
- python - 使用 arcpy 和字典基于层次结构删除重复记录
- r - 我将如何在具有字母列表的数据集中查找特定的字母序列?
- kubernetes - 如何自动缩放舵图rabbitmq statefulset
- c# - 更新客户的 Stripe 订阅以按比例分配订阅费用的金额(部分金额)
- javascript - 如何将单个 p5.js 草图渲染到多个 div
- python - 将结构的字符串表示格式化为python字典
- amazon-web-services - Cloudformation DynamoDB-API 网关代理
- windows - 使用解析字符串重命名批处理脚本中的文件