开发人员如何利用虚拟化?

时间:2009-11-28 09:42:46

标签: virtualization

应用程序开发人员可以在哪里应用虚拟化技术?如何在日常应用虚拟化?

我想了解使用它的资深开发人员。我对以下内容感兴趣:

  • 它如何帮助发展。
  • 如何将其用于测试目的。
  • 推荐的做法是什么。

4 个答案:

答案 0 :(得分:4)

在我看来,主要的好处是,在一台机器中,您可以在以下位置测试应用程序:

  • 不同操作系统,以防您的应用为多平台
  • 不同配置,例如在一台计算机上测试客户端,在另一台计算机上测试服务器,或尝试使用不同的参数
  • 不同的性能特征,例如最小的CPU和RAM,以及多核和大量的RAM

此外,您可以提供VM映像来分发预配置的应用程序,无论是用于测试还是在虚拟化环境中运行应用程序,这些应用程序都是有意义的(对于不需要太多功能的应用程序)

答案 1 :(得分:4)

不能说我是一名资深的开发人员,但在需要控制环境时,我已广泛使用虚拟化。那样做:

  • 开发:不仅让虚拟机适用于不同的部署环境(例如浏览器版本,Windows XP / Vista / 7)真的很有用,而且特别是对于维护而言,它很方便具有为特定作业配置的正确开发工具的VM。

  • 测试:这是虚拟机真正发挥作用的地方:拥有可以重新设置为已知正常配置的不同部署环境以及并行运行的多个服务器实例以测试负载平衡非常棒

我还发现有一个标准测试图像可用,我可以在本地运行以验证修复是否有效。如果没有,那么我可以毫无问题地回滚到上一个快照。

答案 2 :(得分:1)

我一直在使用运行Windows XP的Virtual PC来测试我正在开发的产品。我的客户仍然需要XP支持,而我的主要开发环境是Vista(尚未有时间跳转到Win7),因此为XP设置虚拟设置可以节省大量时间。

在每个客户端丢弃之前,我在我的Vista开发机器上构建并测试然后用XP启动VPC,将二进制文件拖到XP客户操作系统(通过在客户操作系统上安装Virtual PC添加启用)并在那里运行我的测试。我使用虚拟PC的撤销磁盘功能,所以我总是可以从一个干净的XP图像开始。没有虚拟化,这个过程真的很麻烦。

我现在可以将我的旧电脑转储到本地电脑回收中而不后悔:)

答案 3 :(得分:0)

某种测试环境:如果您正在调试恶意软件(无论是编写恶意软件还是针对它开发药丸),使用真正的操作系统并不聪明。唯一可能的缺点是病毒可以检测到它们是在虚拟化中运行的。 :(其中一种可能性是因为VM引擎可以模拟一组有限的硬件。