我计划提出对我的(很小)的公司,我们购买的计算机运行连续一体化上。如果他们说的是,任务的实际购买的机器可能会落在我身上,所以我的问题是:

什么我看起来对于在一个计算机将用于连续的一体化为一个非常小(3人)php队?

什么样的"东西"(存储、处理器等。) 都是重要的,什么是不是?

有帮助吗?

解决方案

你真的不需要那么强大的机器。如果您正在运行测试或其他指标,处理能力可能是您主要关注的问题,但实际上您可以在旧的Pentium 1上运行它,它可能会起作用。

您的约束将成为您的操作环境。如果您正在运行LAMP,您想要使用能够很好地处理LAMP设置的机器,这几乎是任何相当现代的* nix机器。

我在旧的Pentium4工作站上为.NET设置了一个持续的集成设置,它处理得很好。

如果要在构建中归档代码,请记住一件事是存储空间。

其他提示

当我们使用 Maven 时,存储成为我们的问题, Continuum Clearcase 每小时建设一次。每次构建后都会留下快照视图。

我们有一个足够强大的盒子(Sun Fire V490)并将它用于我们的开发集成环境并 Archiva 库。所以我们从未真正遇到任何性能和内存问题。实际上我们唯一一次遇到PermGen内存问题就是构建Maven站点目标,这意味着使用-XX:MaxPermSize = 128m。

根据我的经验,这不一定是一个强大的机器。你用于开发的任何机器都会令人满意。显然,如果你在代码提交上运行单元测试,机器越快,响应就越快。我们的CI服务器运行的是XP SP2,3G处理器,3G内存,现在它的功能已经超出了我们的需求。也就是说,在提交后不超过6分钟收到一封电子邮件会很高兴让你知道构建是否干净并且所有测试都通过了。对于夜间构建,规格可能会下降更多,因为您可能有更多时间来完成这些。硬盘空间(目前可以合理地实现300G)非常适合存储报告和构建回归,但是如果你有NAS,你可以在它们构建完成后推出文件。

几乎任何新的机器可以买到今天可以处理的任务连续一体化上的一个不太大的来源树。有些东西看起来:

  • 2-4GB存,如果你想要跑的测试在平行或者你想要跑的虚拟机模拟的客户。
  • 多核处理器(或多个处理)增加的机会的捕线的错误。
  • "服务器"一类的机器倾向于处理24/7的操作优于"桌面"类机,但是没有明确的路线在两者之间。
  • RAID1或RAID1+0冗余盘是必须的。甚至如果你有备份的(和你应该有他们无论如何)这是一个痛苦来重建一个服务器和一个额外100美元的硬盘是多值得的金钱作为保险。

RAM:足以运行您的CI工具( phpUnderControl ?)以及任何支持软件想要你的构建和测试。

存储:确定要在计算机上保留多少旧版本。根据我的经验,保持很多,特别是没有用。如果你有一个小团队没有很多正式的回滚到旧版本的过程。

CPU:无问题。你可以购买的任何机器都可以使用。

因此,在这两者之间,我倾向于使用RAM而不是存储空间。

除非应用程序非常庞大,否则我只会得到一个双核盒,大约有4个内存,可能还有2个相当快的SATA磁盘设置在RAID 0中。可能会有500个Gigs?

如果您想要非常安全,请为操作系统分区获取两个用于RAID 0的70个gig驱动器,然后在RAID 5中为数据获取3个140+ gig驱动器。

机器性能几乎不重要,但要注意可用性,因为一旦你开始使用它,有一天神奇的烟雾就会消失,你需要立即更换以继续工作。定义合理的备份策略,并确保在必要时知道如何设置新的相同系统。例如,您可能从一个可以映像到另一台计算机的小分区运行,然后如果数据的主要部分驻留在RAID1上并且至少有一个驱动器工作(尽管其他地方有备份),则可以物理移动数据的主要部分在网络上也是如此)。

我认为很多人在这里得到的一件事是机器并不像CI软件那么重要。机器唯一重要的是你需要不同的架构。否则,请获取与目标环境匹配的计算机。如果您正在构建服务器应用程序,那么获得64位处理器可能是明智之举,因为您的应用程序可能会在64位服务器上运行。

我更关心我正在使用哪种工具进行CI。你需要能够快速运行的东西,正如这里的人所指出的那样,除非你需要它们,否则它不应该保留旧版本。如果是这样,我会寻找允许将构建和结果上传到单独服务器的东西。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top