我正在设置一些用于网站开发的服务器。我希望它以相当标准的方式组织。您如何组织服务器来开发相对较小的网站,每个网站都有一点独特的代码?
我关心的一些细节包括(但不限于):
在开发过程中存在哪些不同的服务器?他们的目的是什么?
您的主源存储库在哪里?
开发工作在哪里完成?
测试在哪里进行?
最佳答案
在开发过程中存在哪些不同的服务器?他们的目的是什么?
- SCM 服务器 例如SVN、Git、CVS - 通常是中央源存储库 仅限内部访问。
- CI 服务器 例如CruiseControl,Hudson - 持续集成 用于自动构建/测试的服务器。
- 文件服务器 例如Samba,共享 Windows 目录 - 用于存储构建的 工件,在之间共享下载 开发团队
- 测试/登台/生产服务器 - 按照相同规范构建的机器 用于运行实际的硬件/软件 应用程序。
您的主源存储库在哪里?
通常仅限内部访问,可以与其他目的共享此计算机,例如CI。
开发工作在哪里完成?
在每个开发人员的本地计算机上最好,然后通过 SCM 和 CI 集成更改。
测试在哪里进行?
通常在预留用于测试的服务器上。通常有一组环境,并且构建在通过测试时会在每个阶段进行升级:
- 测试机 - 用于检查构建,通常反射(reflect)开发者机器的设置。
- 登台计算机 - 用于通过基本测试的构建 - 该服务器将更像是实时生产系统的镜像。
- 预上线 - 一个可选服务器,在服务器全面上线之前将提供给业务用户进行测试。
- 实时/生产 - 版本在被测试人员和业务部门接受后将升级到此服务器。
关于organization - 您如何组织服务器进行 Web 开发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1479642/