繁体   English   中英

如何在64位JVM上运行TeamCity

[英]How to run TeamCity on 64-bit JVM

我刚刚发现TeamCity在Windows上运行在32位JVM上,出于某种原因。

我在看到一个大的(不是那么大的)Git仓库并且已经处于JVM的最大堆大小时,看到了内存错误。 我对Java或JVM或TomCat一无所知。

如何在现代的64位JVM上运行TeamCity? 我觉得它会很痛苦,否则就会失败。

我们是一个很小的团队,如果某些东西没有苹果级别的'它只是有效',那么我们跳过它。

我们可以忍受这个不在CI服务器上的项目,但是知道所涉及的内容并权衡投资会很好。

任何建议表示赞赏

编辑

好吧,马库斯指出了这个片段(我已经读过),但我看不到有任何信息可以解释该怎么做。

使用64位Java运行TeamCity Server TeamCity可以在32位和64位JVM下运行。 建议使用32位JVM,除非您需要为TeamCity进程提供超过1.3Gb的内存。

如果您选择使用x64 JVM,请注意从32位JVM切换到64位JVM时内存使用率几乎翻倍,因此请确保至少指定两倍于32位JVM的内存,请参阅为TeamCity设置内存设置服务器。

如果将TeamCity作为服务运行并切换到x64位,则还需要使用x64 Tomcat可执行文件,请参阅更多信息。

我错过了什么?

编辑2

啊,好吧,埋在上面这段链接的一些段落是这样的:

“如果您作为Windows服务运行并希望将JRE升级到64位版本,则需要使用适当的JRE替换\\ jre”

所以我想我需要将一些文件复制到/ jre文件夹中?

我的工作方式(TeamCity 8,Windows server 2008 r2):

  • 在目标计算机上安装64位JRE,现在有两种方法可以执行此操作

  • A - >如果您使用Teamcity捆绑的JRE,请将JRE文件夹([TC Server文件夹] \\ JRE)替换为新安装的JRE x64中的JRE文件夹 - 您必须关闭TC服务器服务(以及所有Java) .exe * 32也可能使用此JRE的服务)

  • B - >更改TeamCity内部属性,指向新安装的JRE x64( 请参阅TC版本8的文档, 可在此处找到TC版本9 ):

     java.home=C\\:\\\\<JRE x64 install folder>\\\\jre java.ext.dirs=C\\:\\\\<JRE x64 install folder>\\\\jre\\\\lib\\\\ext\\;C\\:\\\\Windows\\\\Sun\\\\Java\\\\lib\\\\ext java.library.path=C\\:\\\\<JRE x64 install folder>\\\\jre\\\\bin\\;C\\:\\\\Windows\\\\Sun\\\\Java\\\\bin\\;C\\:\\\\Windows\\\\system32\\;C\\:\\\\Windows\\;C\\:\\\\local\\\\Oracle\\\\clients\\\\112_64\\\\bin\\;C\\:\\\\local\\\\Oracle… 
  • B点的替代方案是更改环境变量JAVA_HOME,它更简单,但它需要在此之后重新启动Windows服务器

  • 如果您现在运行TC Server服务,它应该作为64位Java进程运行(通过任务管理器中的PID chceck):

资源监控任务管理器

更新后的问题的片段在原始链接中有一个链接,指向TeamCity在线文档中TeamCity服务器的Java更新说明

基本上,指令因使用的TeamCity分发和启动服务器的方式而异。

如果您的目的是增加TeamCity服务器的内存,请务必仔细阅读同一文档页面上的相应部分

还有一点需要注意:最近的TeamCity版本在一个单独的进程中执行Git fetch,并且在获取期间与Git相关的内存问题可能需要微调相应的选项

“所以我想我需要将一些文件复制到/ jre文件夹中?”

不。您安装 64位JRE,并更新相关设置以指向64位安装的JRE。

不要将东西从一个JRE安装复制到另一个。 你会破坏的!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM