English 中文(简体)
构建服务器硬件配置
原标题:
  • 时间:2009-03-20 16:42:57
  •  标签:

所以我已经看过< a href = " https://stackoverflow.com/questions/184940/recommended-spec-for-a-build-server " > < / >这个问题,但是我寻找一些更普遍的建议:<强>如何规范构建服务器?< / >强具体我应该采取什么步骤来决定到底是什么处理器,高清,RAM等用于一个新的构建服务器。我需要考虑什么因素决定是否使用虚拟化?

我寻找的一般步骤我需要来决定买什么硬件。步骤引导我到特定的结论,认为“我需要4 gb ram”而不是“尽可能多的ram可以负担得起”

注:我故意不给的细节,因为我寻找教他钓鱼的答案,没有答案,只能适用于我的状况。

最佳回答

答案是要求机器所需要的代码,以“构建”。这是完全依赖于你在谈论的代码。

如果几千行代码就把旧的桌面了。如果其数十亿行代码然后跟银行经理谈谈给你贷款刀片外壳!

我认为最好的地方开始构建服务器虽然是给自己买一个新的开发人员机器,然后重建你的旧是构建服务器。

问题回答

我会先收集一些性能指标基础上无论你目前使用系统。我就专门看CPU和内存使用率,从磁盘读取和写入的数据量,和网络流量产生的(如果有的话)。在Windows上可以使用perfmon中得到所有的数据;在Linux上,可以使用vmstat等工具,iostat和顶部。找出瓶颈所在,构建CPU绑定?磁盘绑定?缺少内存吗?这些问题的答案将指导你的购买决定,如果构建锤子CPU但生成相对较少的数据,放入一个尖叫SCSI-based RAID磁盘是一种对金钱的浪费。

你可能想要尝试运行您的构建与不同级别的并行收集这些指标。如果你使用gnumake,运行您的构建与<代码> - j 2 < /代码>,<代码> - j 4 < /代码>和<代码> - j 8 > < /代码。这将帮助你看看构建CPU或磁盘是有限的。

也考虑到有可能适合您的需要的构建服务器实际上是一个廉价的集群系统,而不是一个巨大的盒子——有大量的分布式构建系统(gmake / distcc, pvmgmake ElectricAccelerator,等等),可以帮助您利用数组的廉价电脑比你可以一个大系统。

Things to consider: How many projects are going to be expected to build simultaneously? Is it acceptable for one project to wait while another finishes?

词或计划构建你打算做什么?

你的建立通常需要多长时间?

你用的什么构建软件?

大多数web项目是足够小(构建时间5分钟),购买大型服务器根本意义。

As an example, We have about 20 devs actively working on 6 different projects. We are using a single TFS Build server running CI for all of the projects. They are set to build on every check in.

我们所有的项目建立在3分钟内。

构建服务器是一个四核4 gb的ram。我们使用的主要原因是性能开发和分期构建QA。一旦构建完成后,该应用程序是自动部署到相应的服务器上。它也负责运行单位对这些项目和web测试。

构建软件使用的类型是非常重要的。TFS可以利用每个核心并行构建项目在一个解决方案。如果你构建软件不能这样做,那么你可能拥有多个构建服务器根据您的需要进行调查。

本店支持16个产品,从几千行代码的成千上万的线(可能一百万+在这一点上)。我们使用3 HP服务器(5岁),双四核和10 gb的RAM。7200 RPM SCSI磁盘驱动器。所有在命令行编译通过msbuild启用并行编译。

设置,我们的最大瓶颈是磁盘I / O。我们将完全消灭我们的源代码和re-checkout在每一个构建、删除和结帐时间很慢。编译和出版时间也慢。远程CPU和RAM不征税。

我在刷新这些服务器的过程中,所以我要工作站类机器的路线,与4,而不是3,ssd替换最快最好的SCSI驱动器/我可以负担得起。如果你有一个类似的设置,那么应该考虑磁盘I / O。





相关问题
热门标签