远程虚拟机与本地开发的比较

3

在本地设置开发环境与在远程虚拟机上设置开发环境有哪些优缺点?假设每个开发人员都可以拥有独立的远程虚拟机。

我只在本地设置过开发环境,而我现在的公司想让每个开发人员使用远程虚拟机。

优点:

  • 远程虚拟机可以更好地隔离环境,避免因为不同项目之间的冲突而导致的问题。
  • 远程虚拟机可以更容易地进行备份和恢复,以及协作开发。
  • 远程虚拟机可以更好地控制资源分配,保证每个开发者都能获得足够的资源。

缺点:

  • 远程虚拟机需要稳定的网络连接,否则会影响开发效率。
  • 远程虚拟机可能需要更多的配置和管理工作。
  • 远程虚拟机可能需要更高的成本。

这个问题并没有真正回答当你为每个开发者都有一个远程虚拟机时,是选择远程还是本地开发更好的问题:https://dev59.com/QXVC5IYBdhLWcg3wliGe - djburdick
这取决于您的开发人员所在地。如果他们远离您的VM服务器,并且可能有糟糕的互联网连接,我会说这是不可行的。此外,如果您计划在某些特定硬件设备(打印机、扫描仪等)上进行开发,那也是一个问题,因为您的开发人员将无法访问他们正在编写代码的物理设备。 - Doodloo
2个回答

4
本地开发速度更快(即没有由网络连接引起的延迟),并且您可以离线工作。远程开发允许您始终拥有相同的、可能受控制的开发环境;有时,开发环境的性质要求您必须进行远程开发,因为您的本地计算机无法设置以满足应用程序要求。它还将所有信息保存在一个地方,这可以根据您的设置提供更好的安全性(例如,轻松盗窃笔记本电脑,但该笔记本电脑上不会有任何信息)。

3

个人而言,我已经尝试过这两种方案,但是在使用远程虚拟机时常常会遇到连接问题和带宽问题。此外,当你使用远程桌面或VNC连接到远程虚拟机时,你可能会失去一些Resharper或Visual Studio等软件的喜爱键映射。

我的最爱方式是在我的笔记本电脑或工作站上使用本地虚拟机。这个虚拟机与你可以远程托管的那个虚拟机是相同的。我在其中安装所有的开发软件,并将其与我的主机分开。然后,我在远程机器上设置远程源代码控制和构建服务器,所有开发人员都可以连接。

我在本地开发,将我的代码检入共享机器,它执行构建并运行所有测试。

干杯!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接