24

Curious, how many of you develop under a VMware environment?

Is it popular for employers to setup vmware for everyone?

Seems like a great way to rollout new desktop computers and perform backups etc.

Just worried about the performance though (PC vmwares).

Update

I was just looking at vmware's site, 1.3 BILLION in sales..wow!

4

17 回答 17

10

我几乎只使用虚拟机进行开发,并且很高兴这样做。多个沙盒环境的灵活性绝对值得在性能上进行少量交易。

显然,VM 永远不会为您提供与在本机系统上运行相同的结果,但您应该能够轻松获得与真实系统相差 10-15% 的性能。根据我的经验,人们遇到的许多性能问题都是由于系统和 VM 配置不足或配置不当造成的。

我主要在具有 4GB 内存的 2.4Ghz Core 2 Duo 上使用 Vista x64 虚拟机进行开发。其中,我为我的主 VM 分配了 2GB 的 RAM 和两个虚拟内核。如果我运行多个 VM,我通常将其更改为 1-1.5GB 和一个内核。

这是一些快速的 GeekBench 测试结果;(请注意,OSX 和 Vista 下的 GeekBench 结果似乎没有可比性,它们在此处列出以显示配置对两个系统的影响)。

全新启动,无活动应用程序:

Native OSX - 3115 Native OSX running Vista 64 VM - 3042 Native Vista 64 (2.4GHz x 2, 4GB) - 2596 Vista 64 VM (2 VCore, 3GB) - 2362 Vista 64 VM (1 VCore, 2GB) - 1892

根据我的经验,这些是导致 VM 性能不佳的最常见原因;

  • 规格不足的机器。理想情况下,您应该能够将一个内核和 1GB 内存专用于您计划在其中工作的每个 VM。与您可能读到的相反,我发现 Vista 在 1GB 内存的 XP 的百分之几内运行。
  • 在你的虚拟机上运行太多东西。将您的电子邮件、网页浏览和即时消息保存在您的本地操作系统上。
  • 在您的虚拟机上关闭屏幕保护程序、后台应用程序和非必要服务等项目。如果您的虚拟机已备份,您可能需要关闭系统还原。
  • 如果可能的话,让您的虚拟机位于与您的本地操作系统不同的硬盘驱动器上,以便在其中一个或另一个开始分页时,它们的磁盘访问是独立的。
  • 对 VM 驱动器进行碎片整理。它的确有所作为。
于 2008-10-27T19:29:29.887 回答
5

VMware Workstation 6.5 在我的旧款 Athlon X2 上运行得非常好。我在我的主机上使用 Visual Studio,并安装了许多带有各种操作系统、框架和浏览器组合的 VM。VMware Workstation 也将 VM 调试添加到 Visual Studio 中,因此我只需按 F6 即可在我的任何一个 VM 中启动我的应用程序,并在我想要的任何操作系统下对其进行调试。唯一需要注意的是,您需要至少 4gb 的 RAM 才能使一次使用超过 1 个 VM 变得切实可行。

于 2008-10-27T18:56:13.137 回答
3

我的公司使用 VMware 使用不同的浏览器/操作系统版本来测试我们的 webapp。为此,每个人的机器上都至少有 1 个 VM。然而,我们都在本机机器上开发——即使在具有 4GB RAM 的四核机器上,也需要大约 20 分钟才能完成我们的应用程序的干净构建!对我来说,我不喜欢使用 VM 映像,因为它们进行了多少分页。这里的一些开发人员已经开始使用具有主机操作系统并在其中运行 Windows 虚拟机的 Linux,并且由于减少了分页,他们获得了更好的性能(Linux 在内存和磁盘缓存管理方面要好得多,而且还有更好的调度程序)。用于测试的额外虚拟机通常会在我们的 Windows 实例中运行,因此被移动到 Linux 主机上并排运行,从而提高了性能。

于 2008-10-27T18:52:42.783 回答
3

在我开始使用诸如 BizTalk Server、Sharepoint 和各种事物的 beta/CTP 之类的技术工作时,我转向专门在 VM 中进行开发……不可能让所有东西共存于同一个盒子上.

自从切换以来,我享受了在 VM 中开发的许多其他好处——快照、可移植性、动态封送资源等。

最终的好处是由于 VMWare 存在于许多不同的主机操作系统上,因此我可以自由选择我选择的主机操作系统 - XP、Vista、Linux、OSX 等。

现在我在 MacBook Pro 上运行 OSX,它允许我在同一个机器上进行 Mac 和 iPhone 开发以及 Windows 开发。

这是让我回答这个问题的冗长的背景故事——只要你的硬件配置得当,你就不应该遇到任何性能问题——即使是用 BizTalk 和 SQL Server 做疯狂的事情。

于 2008-10-27T18:59:34.067 回答
2

我们在我工作的地方使用它。我们甚至制作了带有该设备的 DVD,以减少新开发人员上手所需的时间。

关于性能,我看到性能受到影响。如果您启用了快照,它似乎主要受硬盘驱动器的限制。当然,在我将虚拟机移至 VelociRaptor 后,即使是性能下降也不再明显。

哦,我使用 Visual Studio 2005 和 2008 开发 ASP 网站和 C/C++ 应用程序。

于 2008-10-27T18:29:20.803 回答
2

可悲的是,它还不是“普通”意义上的“流行”,但它绝对是那些尝试过的人“喜欢”的意义上的“流行”。作为一名顾问,我喜欢它,因为它允许我在几分钟内交换工具链,并且在约会结束时,刻录 DVD,将其放入项目文件中,然后完成。

一些响应者似乎在强调使用虚拟机进行测试,我认为它开始获得一些牵引力,至少在更复杂的商店中是这样。这显然是部署和兼容性测试的巨大胜利。

于 2008-10-27T18:52:52.410 回答
1

Depends on the employer, I suppose. On a machine that is adequately-equipped, VMWare (or any virtualization software) performs perfectly fine. On machines that you are more likely to be forced to use at the majority of programming jobs, not so much.

I personally do not use VMWare at work. My work machine barely has enough power to natively handle the tools I need to use.

于 2008-10-27T18:22:21.020 回答
1

Its very popular unless employer is cheap, i used it in a few companies. its great for .NET or any language where you have to check if the thing works on different OS versions/platforms. The most common way is not to use VMWare on your own computer but to remotely join it.

于 2008-10-27T18:25:44.447 回答
1

一旦你开始使用虚拟机,你就再也回不去了。我在 MacBook Pro 上使用 VMware 进行 Windows 和 Linux 开发,我对结果非常满意。

观察:

  • 获得足够的内存。4GB 是相当可用的,但 8 更好。您是开发人员,您打开了很多应用程序和网页,对吗?
  • 为 VM 分配 1 个核心 - 它比 2 个更快。
  • 遵循 VMware 为来宾分配 RAM 的建议
  • 为来宾操作系统使用虚拟硬盘驱动器。它比从 BootCamp 分区运行来宾要快得多。
  • VMware 没有启用 Aero 所需的 WDDM 驱动程序。
  • 当我进行评估时,VMware Linux 主机视频驱动程序似乎没有 Windows 或 OSX 主机那么快。与其他两个操作系统相比,Linux 主机上的 Windows 来宾视频明显较慢。这是我选择 Mac 而不是 Linux 机器的主要原因。
于 2009-08-25T01:56:42.440 回答
1

我已经开始在我的个人 PC 上几乎所有东西都使用 VMware。

我只为游戏保留我的本机 Windows 安装,并为其他所有内容使用单独的虚拟机:

  • 一般办公工作站(MSOffice、会计软件、一般垃圾软件)。这个几乎一直都在。
  • WAMP 堆栈开发环境
  • MS堆栈开发环境
  • 用于 beta 测试和玩弄可能破坏操作系统安装的东西的一次性环境。

一切都很快。我使用了精简的 WinXP 基础安装,它占用的空间/内存非常少。

磁盘 I/O 似乎是我的瓶颈,但我觉得我们距离相当实惠的 SSD 只有一代(6 个月?)。

我无法回到物理计算。

于 2009-08-03T13:31:39.460 回答
0

我们尝试过使用虚拟机,但发现 SQL Server 在同一个物理机器上运行多次基本上会使其陷入无用状态。但是,我认为一旦从 VM 堆栈中删除数据库,我们就没有看到任何严重的问题。

于 2008-10-27T20:11:50.520 回答
0

桌面/工作站上的虚拟化:Sun Virtualbox 或 VPC。轻松,轻松。我们分享我们最喜欢的图像,保持因果关系,有时甚至对它们进行 sysprep。

主要的 QA 环境使用 Manager 变得严肃起来。开始工作是一头野兽,但没有它就不能生活。我们无法在真机上负担得起我们的测试矩阵,或者在没有模板管理的情况下维护它。如果没有这样的资源,您可能应该做和不做的事情。

长期使用的服务器或 QA DB:VM Ware ESX。(没有简短的解释)。

我们在数据库和虚拟化方面没有性能问题。好吧,我在 Lab Manager 中做过——这也是 DB 在我们商店中使用 ESX 的部分原因。在 I/O 方面,我们的 IT 人员使用 SAN、iSCSI 和高品质线来创造奇迹。如果数据库服务器是裸机,那么避免在数据库服务器上出现性能问题肯定更简单,并且可能从专用主机中挤出更多性能。

这带来了虚拟化的用途和不适合的用途:虚拟化不适用于您已经最大化硬件的场景。例如,我不会在 dev 上使用它,因为我需要我的 dev box 能给我的一切。它是用在更少主机上的数十个易于配置的虚拟克隆来替换数十个未充分利用、难以配置的物理服务器。它允许热插拔更多容量,或允许工程灵活性。

我还有一些 90 年代后期的电脑游戏,我在虚拟化的 Windows 98 中运行。

于 2009-04-30T06:41:33.057 回答
0

VMWare 作为 Windows 开发环境在我的 2GB 内存(XP 客户机,XP 主机)的双核上运行很糟糕。即使主机上除了 VMware 之外什么都没有运行,每次切换应用程序时,持续的分页需要大约一分钟才能解决。哎呀,本机 VS2008 在大量使用智能感知时(偶尔会出现明显的延迟)甚至都不会运行得那么好。虽然使用固定的 VM 映像作为我的日常工作环境有很多好处,但秒到秒的性能延迟实在是太令人沮丧了。

我的雇主正在给我买一个不错的 64 位系统和大量的内存,所以我会在一个月内重新讨论这个主题。现在我只是每隔几个月重新映像我的机器。

...控制台开发显然表现得很好。对于高内存应用程序没有启动和关闭 vmware 的服务器应用程序(部署)很可爱并且性能很好。

于 2008-10-27T18:35:42.960 回答
0

在我的开发环境中,我使用了几个 VM。通常每个角色有一个(linux)服务器(例如 subversion、MySQL 数据库、web 服务器、trac 服务器等)。这样我的主机保持干净,不会通过运行 amok 来影响我的工作,并且数据在 VM 主机上保持安全。

VmWare 是相当高级的,对于生产,我建议使用更低级的裸机解决方案,例如 Xen。

于 2008-10-27T18:38:29.367 回答
0

就我个人而言,我喜欢在我的日常开发中使用虚拟化解决方案,因为它能够同时在多个操作系统上进行测试和开发。但是,由于我的日常开发涉及相当多的 opengl,因此目前这不是一个可行的解决方案,因为大多数情况下,由于缺少驱动程序和硬件加速,VM 上的操作系统将默认返回软件渲染。

于 2008-10-27T18:40:04.790 回答
0

我正在做一些 SharePoint 开发,我真的很喜欢在我的笔记本电脑上使用 VMPlayer 所带来的灵活性。我有一个带有 WSS 和 VS2005 工具链的图像,以及另一个带有 MOSS 和 VS2008/SQL server 2008 的图像,当我需要它到最大时。当 2008 年的图像损坏时(我猜是很多 beta 版本),我可以删除它并从之前的备份中创建一个新的。在火车上能够在服务器环境中进行开发就说明了一切。

PS:运行 VMWare 只需要 4 GB,而且性能非常好,即使使用慢速 5600 rpm 磁盘驱动器

于 2008-10-27T19:25:34.077 回答
0

我在整个网络的 VMWare 版本下开发,包括:AD 服务器、数据库服务器等,不用说,即使在我们运行 4gb 内存的 VMWare 服务器上,性能也很糟糕。但它确实让我无需担心意外破坏我公司的实时数据库或关闭现实世界中的重要服务器而进行开发。如果发生了一些疯狂的事情,没什么大不了的,我可以把它回滚到昨天。如果我的整个网络没有安装在 VMWare 环境中,性能将是令人难以置信的,但运行所有其他系统确实会使它陷入困境。

于 2008-10-27T19:30:47.823 回答