远程虚拟机与本地开发
与在远程虚拟机上设置开发环境相比,在本地设置开发环境有哪些优缺点。假设您有可供每个开发人员独占的远程虚拟机。 我只在本地设置了开发环境,而我当前的公司希望为每个开发人员切换到远程虚拟机。
What are some pros and cons to setting up a development environment locally versus on a remote VM. Let's assume you have remote VMs available for every developer to own exclusively.
I've only setup dev environments locally and my current company wants to switch to remote VMs for each developer.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
本地开发速度更快(我的意思是,不会因为网络连接而出现延迟),并且您可以离线工作。
远程开发允许您始终拥有相同的、可能受控的开发环境;有时,开发环境的性质使得您必须远程开发,因为无法设置本地计算机来满足应用程序要求。它还将您的所有信息保存在一个地方,这可以提供更好的安全性,具体取决于您的设置(即,很容易窃取笔记本电脑,但笔记本电脑上不会有任何信息) )。
Developing locally is faster (by which I mean, there is no lag as a result of the network connection), and you can work offline.
Developing remotely allows you to always have the same, probably controlled, environment to develop in; sometimes the nature of the development environment is such that you must develop remotely as your local machine can't be setup to meet the application requirements. It also keeps all your information in one place, which can provide better security, depending on your setup (i.e., it's easy to steal a laptop, but the laptop wouldn't have any of the information on it).
我个人使用过这两种方案,并且在远程虚拟机上工作时经常会出现连接问题和带宽问题。此外,当您使用远程桌面或 VNC 连接到远程 VM 时,您可能会丢失一些您最喜欢的 Resharper 或 Visual Studio 等键映射。
我最喜欢的工作方式是在笔记本电脑或工作站上使用本地 VM。该虚拟机与您可以远程托管的虚拟机相同。我在那里安装所有开发软件并将其与我的主机分开。然后,我在所有开发人员都可以连接的远程计算机上设置远程源代码控制和构建服务器。
我在本地开发,将我的代码签入共享计算机,它执行构建并运行所有测试。
干杯
Personally I have used both scenarios and there are often connection issues and bandwidth problems with working on a remote VM. Also, when you use remote desktop or VNC to connect to your remote VM you may lose some of your favourite key mappings for Resharper or Visual Studio etc.
My favourite way to work is to use a local VM on my laptop or workstation. This VM is the same one that you could have hosted remotely. I install all development software there and keep it separate from my host machine. Then, I set up remote source control and build server on the remote machine all developers can connect to.
I develop locally, check in my code to the shared machine and it performs the build and runs all tests.
Cheers