【问题标题】:Sprintboot app deployed in Marathon/Mesos部署在 Marathon/Mesos 中的 Spring Boot 应用
【发布时间】:2016-07-20 21:50:48
【问题描述】:

我已打包此存储库https://github.com/spring-cloud-samples/eureka 提供的eureka server,并尝试在使用 Marathon/Mesos 管理的集群安装上启动它,并设置了内存限制。

不过,如果我在 Marathon 中以 512MB 启动应用程序,则启动需要 100 秒(每个从站有 32GB 的 RAM),而不是在我的 mac(16GB 的 RAM)上启动 12 秒。

即使配置 Xms 和 Xms 也不能解决问题。使用 256MB 更糟糕。

【问题讨论】:

  • 可以分享一下你的启动参数吗?我看到了与默认使用的随机源相关的类似行为。你可以尝试去:-Djava.security.egd=file:/dev/./urandom吗?这在安全性方面不好,但在某些情况下它实际上是可以接受的。
  • 另外,如果您使用的是 Docker,那么首次启动应用程序时会出现延迟。 512MB 对我来说似乎有点低,您在 MacBook 上使用的设置是什么?
  • @daniel.eichten 这是我用来在 mesos java \ -jar \ -Dspring.profiles.active=mesos \ -Xmx256m -Xms128m \ -XX:MaxMetaspaceSize=64m \ *.jar \ --discovery.server.port=$PORT0 \ --discovery.server.path=/discovery-server 中启动 eureka 服务器的命令行,内存为 512 MiB,磁盘空间为 128 MiB。我刚刚尝试了 security.edg 参数,它并没有改变行为。将 CPU 数量增加到 2 可以使启动时间更好,但这不是我想要的。如果可能的话,我想以 0.5 的 CPU 和 128 Mib 为目标...
  • @Tobi 如您所见,我正在直接启动 jar 文件
  • 嘿@Jiujiu 我有同样的问题,或者至少类似的问题。如果我在本地启动,eureka 运行良好,内存限制为 512mb,但在 Mesos(DC/OS)上它会失败,除非我将内存设置为 1gb 或更多。你找到解决办法了吗?

标签: spring-boot mesos marathon


【解决方案1】:

我们找到了这个,但不确定它是否可以应用于spring boot启动的tomcat

灵感来自

https://community.alfresco.com/docs/DOC-4914-jvm-tuning#w_generalcase

https://stackoverflow.com/a/33985214

以 MB 为单位的总内存

TOTAL_MEM_KB=`free | awk '/^Mem:/{print $2}'`

处理器计数

CPU_COUNT=`grep '^processor\s:' /proc/cpuinfo  | wc -l`

Xmx 设置占 GB 的一半

XMS=`expr ${TOTAL_MEM_KB} / 1000 / 1000 / 2`

MaxPerm 硬编码为 256M

MAX_PERM_MB="256"

HeapRegion 是 Xmx/2048 的较低 int 轮次

G1_HEAP=`expr ${XMS} \* 1000 / 2048`

ParallelGC 是 CPU 的一半(四舍五入到较低的 int)

PARA_GC=`expr ${CPU_COUNT} / 2`

ConcurrentGC 是 ParallelGC 的一半

CONC_GC=`expr ${PARA_GC} / 2`

JAVA_MEM="-Xmx${XMS}g -XX:MaxPermSize=${MAX_PERM_MB}M -XX:+UseG1GC -XX:MaxGCPauseMillis=1000 -XX:G1HeapRegionSize=${G1_HEAP} -XX:ParallelGCThreads=${PARA_GC} -XX:ConcGCThreads=${CONC_GC}"

【讨论】:

    猜你喜欢
    • 2015-08-31
    • 2015-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多