繁体   English   中英

您是否将虚拟机用作主要开发环境?

[英]Are you using virtual machine as your primary development environment?

最近我购买了Windows Home Basic附带的笔记本电脑(没有ASP.Net/IIS。我想将Windows版本升级到ASP.Net/IIS,但我想另一种可能性:

我有一个360Gb高清硬盘盒。 我想在这个高清案例中创建一个带有Windows Ultimate的虚拟机(安装ASP.Net,IIS和Visual Studio 2008),然后我就可以在我将要处理的任何计算机上访问我的“开发环境”(我的台式机和我的笔记本)。

但我担心表现。 我没有在虚拟机中工作的经验(我只是用它来进行快速兼容性测试)。

您是否将虚拟机用作主要开发环境? 你发现了什么?


编辑

谢谢你的回答! 它确实对我有所帮助!

我也想知道可移植性,即我在笔记本电脑中创建的虚拟机是否可以在桌面上运行? 我需要重新激活Windows吗?

我使用VMWare和基于Microsoft VPC的VM相当多,托管在基于Quad 6600的XP Pro盒子中。

我对VM的使用最初是在不同的环境中进行测试,为了进行调试,我必须在其中的一个或两个中安装SQL Server和VS2008。

出于这些目的,VM非常方便。

但基于这种经验,我不会仅仅出于性能原因而将VM作为主要开发环境。 虚拟机性能出奇的好,但差异(几乎所有东西)虽然不是很大,但足以让人注意到。

当我每天编译几十次,运行大查询等等时,我不希望我的开发机器比它绝对要慢。

只要您有足够的RAM用于两个操作系统,使用虚拟机就可以了。

您还应该知道虚拟机有一些限制,例如在支持图形卡时,因此您需要确保您开发的任何内容都不依赖于虚拟机上不可用的功能。

我已经使用VMWare作为我的主要开发环境已有几年了。

我通常在一些环境之间切换

  • Windows窗体/ WPF开发(XP,.Net 3.5)
  • Ruby Development - 在Ruby中做了一个网站(XP,Instant Rails)
  • ASP.net 3.5 - 用于玩新东西(XP,.net 3.5,IIS,SQL Server)
  • ASP.net 2.0 - 有时候地方仍然停留在2.0(XP,.net 2.0,IIS,SQL Server 2005)

我学到的一些东西

  • 使用XP而不是Vista。 当你运行多个vms时,额外的绒毛真的很明显
  • 给每个VM大约1GB(有时小到512MB)。 您希望尽可能少地阻止他们更换您经常做的事情。
  • 在进行任何开发之前,请保留堆栈的基本安装快照。
  • Quad Core + 8gb ram现在很便宜。 我通常在开发时运行几个vms。 如果你有更少的ram或内核,请保持运行的vms数量。
  • 关闭软件鼠标光标并以全屏模式运行(大多数人都没有意识到它是一个虚拟机,直到我显示它们)。

了好处

  • 我可以在我拥有的任何电脑上在5分钟内运行任何主要堆栈。
  • 我可以将我的整个开发环境移到笔记本电脑或其他电脑上。
  • 我可以轻松地保持单独的开发堆叠,否则可以踩到每个人的脚趾。

硬盘驱动器 :你的第一个瓶颈是RAM,但RAM现在很便宜,因此没有理由没有8-16gb。 您的下一个主要瓶颈是硬盘驱动器的主要方式。 我现在尝试为每个活动虚拟机配备一个硬盘(用于桌面工作负载,而不是服务器端口)。 Raid设置可以提供极大的帮助,如果您能负担得起, SSD可以完全解决问题。

我从2002年开始使用VMware。我的第一个用途是在来宾VM中创建开发环境,然后为我的队友复制它。 当硬件升级时,我在大约一小时内切换到我的新桌面(安装VMware,复制VM)。

我经常在台式机,笔记本电脑和服务器上使用VMware。 我将它们用于开发,测试和生产。 我曾尝试在虚拟机内玩游戏,但大多数游戏都没有削减它(而且VMware也是如此,但无论如何我试过了)。 但是,最新的VMware Workstation版本可能会玩几款游戏。

我特别喜欢我的笔记本电脑上的VMware,我真的很喜欢将它用于Ubuntu Linux。 到目前为止,我发现最好使用Windows(2000 Pro SP4或XP)作为主机操作系统,因为它具有出色的设备驱动程序。 但是,我更喜欢在Ubuntu上进行开发,但这在VM中运行良好。 我已经在各种硬件上直接安装了Ubuntu,但到目前为止还没有足够的满足程度,在再次恢复Windows之前将其保留了几个月。

然而,我的笔记本电脑确实很好地运行Ubuntu,我只是恢复到Windows XP,因为我想加载一个eSATA卡,这将给我高性能访问外部硬盘驱动器...运行虚拟机! 由于工作中的干扰,我还没有完成安装。

说到工作......我已经“获得”了三个旧的孤立桌面,我正在转向VM主机。 我即将尝试加载VMware ESXi,尽管我刚刚用Windows 2000 Pro SP4和VMware Server 1.0.8加载了两个。 我管理一个开发团队,我主要针对这些虚拟机用于开发环境,因为我们公司将我们的主要台式机/笔记本电脑瘫痪到实际工作中。

喝Koolaid !!! VMware非常棒,还有很多其他好的VM选项!

最好的祝愿。

编辑:更多好东西......

特别是,请查看VMware ESXi,VMware Server和Ubuntu JeOS。 好吃的东西!!!

不,但是当我在IE中测试网页时,将它用作测试机器。

是的,我将VMWare工作站6.5和ESX 3.0用于我的服务器。 奇迹般有效。 没有明显的性能损失。

我过去曾使用VM进行开发,并且我经常使用它们来测试各种类型。 使用VM进行开发工作非常顺利,我唯一要注意的是,一些外部硬盘驱动器速度很慢,这可能会给您带来问题,但快速驱动器运行良好。

我在Vista 64上使用Ubuntu作为我的linux开发环境。

该机器具有10k驱动器,大量快速内存和双核CPU,因此运行良好。 我最终得到了这个大杂烩,因为当时我构建的机器ubuntu不能继续运行,而VM是解决这个问题的最简单方法。 我发现它非常方便,所以即使ubuntu现在可能对这台机器很好,我仍然会使用VM。

完全备份我的开发环境并将其转移到异地或分发它(即GPL合规性很简单 - 无需与试图为他们设置开发环境并处理怪癖的人们合作,这是微不足道的。软件版本等)

嵌入式ARM linux开发需要。

-亚当

我在我的lappy上使用3 GB Ram运行Windows 7 64bit(是的它很低)。

我发现在虚拟机上运行我的开发环境真的很痛苦。 当我打开5个IDE时,SQL Server 2008,NotePad ++,OxyGenXML编辑器和Chrome / IE / FireFox都在我的VM中打开,然后我的主机有Outlook,OneNote和其他一些运行它的程序变成垃圾。

对于VM来说,使用多个显示器并不容易,特别是如果你多次拿走笔记本电脑,然后将其重新连接起来。 重新同步非常耗时。

我的其他同事即使使用5-6GB内存也会遇到同样的问题。

如果我把所有浪费的时间加起来等待我对虚拟机原因的额外处理,那么如果我不得不从头开始重新完成我的计算机将花费不到8小时。

这实际上取决于情况。 我在企业界遇到的最恶劣的环境是Windows笔记本电脑+ Linux虚拟环境(笔记本电脑本身并不是最重要的,我不喜欢首先将笔记本电脑作为开发机器)。 我主要是一个java开发人员,并且喜欢编写很多单元测试,并且通常使用这种组合(我真的不想使用它,但是好吧,我只是懒得抱怨这么多)运行单元测试需要太多时间了。

当然这取决于测试的类型,但在这种情况下,我的猜测是磁盘I / O只会减慢速度。 我只是喜欢编译和测试,所以这是我支持原生环境的主要原因:速度。 即使是一点点,有时候感觉太多了。 很抱歉没有回答更广泛的范围而且非常主观。

我在Mac上使用VMWare Fusion来运行Windows Server 2003,Visual Studio和我的所有IIS要求。

我没有问题,但我的Macbook pro确实有4GB的RAM,当它运行时分配给WMVare的2GB。

我的主要Windows开发环境是原生的Vista x64。 由于上面提到的显卡原因和(可能没有根据的)关于VM环境和调试的担忧,我认为我仍然想要一个用于我的.Net和Windows Win32 / 64开发的本机环境。 我目前在GUI开发方面工作得更多。

然而,我过去使用VM的一个非常重要的开发是基于Python的程序,无论是使用wxWindows的纯Python还是使用C ++调用的嵌入式Python。 使用VM允许我控制Python环境并针对保证与部署环境匹配的不同安装进行工作。 我建议任何人使用动态语言,你倾向于安装大量的外部软件包,而且很难干净地恢复到早期版本。

另一件需要考虑的事情是使用VM作为远程调试节点的目标。 Macintosh上的许多REALbasic开发人员都在进行Windows测试(REALbasic有很棒的跨平台调试),但我过去也曾在Visual Studio中使用它。

快照很方便。 您可以使用多个VM在不同的操作系统上进行测试。

我们的工程师在VMWare esx上运行Windows VM。 我们可能在一台Dell Poweredge上运行了12台Windows VM(是的,它很强大,但仍然如此)。 他们几乎看起来比网络更快,然后我在Core2 Duo上本地安装了XP!

在本地机器上,只要你有RAM,它仍然可以很好地运行。 一个精简的XP(类似TinyXP)的虚拟机和我6个月大的本机安装一样!

关于便携性; 假设相同的体系结构(和操作系统),则虚拟机应该在两台物理计算机上运行良好。 如果VM的硬件配置不会发生太大变化,则无需在VM中重新激活Windows。

我运行Ubuntu作为我的主要操作系统,然后使用Windows 2003虚拟机(使用VirtualBox)在Windows中进行开发。 主要用于Visual Studio 2008 Web开发。 在家里这样做了3年,但现在正在尝试在工作中。

即使使用ReSharper和大约50个项目的解决方案,也能正常工作。 它不像我直接通过Windows运行它那么快,但拥有一个设置良好的虚拟机意味着我可以与其他开发人员共享它,还可以在vms之间轻松切换(我们正在寻找尝试Windows Server 2008)。

也意味着我可以使用Windows,但让Linux处理IM,Firefox,音乐(当然),索引(跟踪器),FTP等等...加上我有我的终端(grep,ssh你的名字)它)。

我们尝试使用Windows的鬼图像,但发现由于人们有不同的硬件,图像并不总是有效。

既然已经差不多一年了,你们还在使用虚拟机作为开发环境吗? 我曾经,但因为性能变差而停止了。 就是想。

我在Mac上使用Parallels - 没有问题。

在工作中,我们在大多数测试环境中使用VM - 它们运行良好

我过去常常使用虚拟机作为沙箱,以防止不守规矩的应用程序做不守规矩的事情。 (Sandboxie是一个非常棒的程序),但我总是忘记保持它们包含在内,并且不时地重新安装窗口,比不断维护更容易。

对于虚拟机,您可以使用硬件,因为您的BIOS和硬件都已被清除。 在某些情况下,创造低水平的东西实际上是不可能的。 但是,当通过远程桌面连接在虚拟机上使用托管服务器时......绝对精彩,如此简单! 我可以点击几下进出,所以我猜这是我使用的头号虚拟化。

VMware调试设备和筛选器驱动程序。 VirtualBox对于偶尔使用的Ubuntu来说非常快速,而且还有一个XP控件,用于测试和安装我不信任的应用程序IE6,FF2,Chrome,Opera和Safari。

我有一台运行几个开发环境的Windows 2008 Hyper-V机器。 它根本不慢(我能注意到)。 我的一些环境虽然没有虚拟化。 通常如果设置需要回滚困难的东西,那么我将使用虚拟机,如果没有,我将只使用桌面。 请记住许可费用。 如果您要虚拟化Windows服务器的副本,那么您将需要Windows服务器的许可证。 将Vista Home Basic升级到运行IIS的版本可能更便宜(虽然我的建议是运行Win 7 beta,因为它是免费的,然后在它准备好时升级到win7的最终版本)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM