使用Python Virtualbox API的优势是什么?

11
使用Python VirtualBox API相比使用XPCOM的优势是什么?
3个回答

9
优点是pyvb更易于使用。
相反,XPCOM的python API文档不存在,而且API不符合python风格。您无法进行内省以查找对象的方法/属性等。因此,您必须检查C++源代码以了解其工作原理或已编写的一些python脚本(例如vboxshell.pyVBoxWebSrv.py)。
另一方面,pyvb实际上只是调用命令行上的VirtuaBoxManager的python包装器。我不知道这是否是真正的缺点?

5
我通常不建议使用其中任何一个。如果需要以编程方式使用虚拟化,请看一下libvirt,它为您提供跨平台和跨超级监视器支持;这样,您可以在以后使用kvm / xen / vz / vmware。
话虽如此,SOAP API使用了两个额外的抽象层(HTTP事务的客户端和服务器端),很明显只是调用XPCOM接口。
如果需要本地主机支持,请使用XPCOM。 libvirt / SOAP的额外间接性对您没有帮助。 如果需要在多个客户端机器上访问各个主机上的virtualbox,请使用SOAP或libvirt。 如果需要跨平台支持或在Linux上运行代码,请使用libvirt。

1

来自Sun网站关于VirtualBox python APIs的内容:

SOAP允许通过HTTP控制远程VM,而XPCOM则更加高效,并公开了某些使用SOAP无法获得的功能。

它们使用非常不同的技术(SOAP是过程式的,而XPCOM是面向对象的),但由于最终是API到VirtualBox的相同功能,因此我们保留了绑定原始语义,因此除了连接建立之外,代码可以以这样的方式编写,使人们可能不关心与VirtualBox实例的通信渠道。

从那篇文章中,我很难看出“python virtualbox API”和“XPCOM”之间的区别。您能提供您所考虑的API的链接吗?


pyvb(即Python虚拟机)文档在以下链接中:http://enomalism.com/api/pyvb - ask

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