在PC上开发虚拟机的优缺点

11

我最近组建了一台性能升级的个人电脑(Q9450,8GB DDR2 1066内存,1TB硬盘,双8600GT显卡,安装有Vista旗舰版和双22寸显示器),现在正在评估是否应该在Vista上面使用虚拟计算机/VMWare来进行开发?

我能看到的一个好处是,我可以在我的Vista笔记本电脑上运行同样的虚拟机,这样我的任何一台机器都可以使用相同的开发环境。我还计划在年底之前购买一台MBP。

在网上找到了一些有用的文章 Here

如果有其他想法,非常感谢!

14个回答

5
对于Web开发,我喜欢将服务器部分分离成虚拟机。我的当前设置是Macbook Pro和几个Debian虚拟机。我喜欢它的隔离性。我可以在服务器上尝试新软件,并且如果有问题,我可以回滚到以前的状态。
我通过网络共享(Samba)在主机系统上使用Textmate进行编程。

5

虚拟机的另一个优点是具有干净的安装基础。我的台式机和笔记本除了用于开发之外,还用于许多其他事情。你永远不知道你安装的软件会不会冲突,或者你玩弄的小调整是否会破坏你的操作系统。重新安装/配置所有工具以使其完全符合你的要求可能需要相当长的时间。如果你有开发虚拟机镜像的备份,你可以尽情折腾你的电脑但仍能编写代码而无需停机。它还允许你在本来更喜欢使用Linux或MacOS的计算机上运行Win/Visual Studio/Etc。

你也可以制作同一镜像的多个副本,每个副本都用于一个单独的项目。

能够在笔记本电脑/台式机/服务器/远程连接之间进行转换,并始终处于同一环境中,这也非常有帮助。


3

我发现一个问题(至少在使用VMWare Server时)是,无论你的电脑有多快,屏幕刷新率仍然约为30hz。 这使得使用一段时间后略微不愉快。


3

我现在工作的地方,由于没有管理员权限,所以我使用虚拟机进行开发。

优点:
我喜欢使用虚拟机,因为它可以让你有一些灵活性——你可以在多个机器之间切换,同时运行程序,并且有一个很酷的环境来工作。

缺点:
您必须启动多个操作系统。这需要时间,内存和资源。

在虚拟机上进行剪贴板操作有时会很有趣。有时复制到剪贴板不起作用或在虚拟机之间混淆。(使用VMWare)。

当您插入USB驱动器和其他外部设备时,文件操作可能会变得有趣。虚拟机有时无法识别设备,有时可以。

如果您的虚拟机镜像损坏,则可能会失去其中的所有内容......除非已备份.....


2

这对于展示开发讲座非常有用,您可以恢复到快照并每次从完全相同的起点开始进行演讲。


1
如果你要使用 VMWare,就要为未来的 MacBookPro 添加更多的 RAM。我还没有(至少还没有)添加,但是在同时打开几个其他应用程序时,性能开始变得缓慢。

祝一切顺利。


1
最近我在Linux上使用Windows XP虚拟机和Visual Studio做一些工作,不知怎么回事,制造虚拟机的人(vmware)让Windows机器实际上跑得更快了。我们进行了一些时间测试以确保这一点,并没有太大的差别,但有些东西(例如自动完成)确实弹出得更快了。

1

如果你使用的是Windows系统,Virtual PC对于开发工作来说相当不错。VMWare虚拟服务器并不是为桌面设计的,如果长时间使用,你会感到非常疲劳。Sun的VirtualBox是另一个与Virtual PC竞争的选择。VMWare有一个工作站产品,但它不是免费的。

通常情况下,我会在真实的桌面上进行开发,然后部署或测试虚拟机,这样我就可以轻松地进行快照和回滚。


1
长时间以来,我们一直在开发与 Visual Studio 2005 早期版本相关的 .Net 软件。为了保护真实机器免受预发行软件的各种问题的影响,我们把所有的开发工作都放在虚拟机中完成。这个方案效果非常好。我一直在考虑回到那个模式,因为它使升级物理硬件变得轻而易举(更不用说通过替换整个机器来处理硬件故障,更加方便):你只需要复制 VM 镜像即可。
在我的当前机器上(一台带有 4GB RAM 的 Core2Duo 计算机),运行一个虚拟机时性能下降几乎不会被察觉。然而,运行两个虚拟机就很痛苦了。
此外,我还无法弄清楚如何让 VMWare Server 在两个显示器上良好地工作。

1
我不会想要在虚拟机中进行开发,但是我会使用虚拟机来测试一些东西。比如,设置几个虚拟机来模拟 n 层架构、客户端服务器设置或者仅仅为了在多个操作系统上测试代码都是不错的选择。

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