0

我们公司已经开始“内部”开发自己的系统。我们已经有了几个开发人员,他们将负责用 Ruby/RoR 编写代码。

我们目前正在讨论基础架构,我想问一下:我们是应该在本地机器上开发所有东西,然后将其放到测试服务器然后再投入生产,还是在开发/测试服务器上开发所有东西,然后将其发布以进行测试,然后再投入生产?

只是对上面描述的更新:在“本地机器”下,我指的是开发人员的桌面,而这个测试/开发服务器是我们办公室的一台机器。

4

2 回答 2

1

这是一个有效的问题,因此需要考虑权衡。

一般来说; 在当地工作。Web 应用程序开发具有自然流程,导致开发人员每小时保存和刷新浏览器多次。您节省的所有网络延迟时间实际上会加起来,并且不会让开发人员感到沮丧。

但是,在本地工作也有缺点,您需要确保您的设置与测试/生产服务器上的设置完全相同。这意味着一切都包括您的内核版本、apache 版本、ruby/rails 版本。DNS 很简单,但必须再次完美地模拟实时情况,以便 AJAX 调用等无缝工作。

即使您确保以上所有内容,当您将应用程序移动到实时服务器时,您也可能需要进行一些小的更改,但我的经验似乎总是有些东西。

此外,在实时服务器上运行对开发人员来说并不是那么痛苦。通过 FTP 从文本编辑器/IDE 保存源文件即使在 Internet 上也应该花费不到一秒钟的时间,刷新远程浏览器会话将使您的 UI 设计人员对真实的用户体验和流程有更好的感觉。如果您使用 SVN 而不是 FTP,则同样适用。

安全性不是什么大问题,将 FTP 和 SSH 锁定到办公室 IP,但如果开发人员需要从其他地方编辑源,则可以使用后门,以便他们可以暂时打开防火墙到自己的 IP。

我在远程测试服务器、办公室服务器和本地机器上开发了 PHP 和 Rails 应用程序。经过多年的努力,我可以说作为开发人员,我并不介意。

于 2012-07-31T12:24:35.903 回答
0

作为开发人员,我的建议是您首先需要在本地服务器上完成所有开发工作。测试后,您需要发送给客户端以使其生效。

我在Ruby on Rails @ andolaso​​ft.com上作为 Web 开发人员工作,我们遵循相同的程序。希望你明白了。

谢谢

于 2013-07-08T11:19:17.367 回答