我在Bluemix中看到了这些,但它们之间有什么区别?
答案 0 :(得分:12)
Cloud Foundry和OpenWhisk是两个Bluemix Compute模型,开发人员可以使用它来为应用程序的工作负载提供动力。
我会给出两个服务的非常高级摘要以及何时使用它们......
所以问题仍然存在:何时应该使用Cloud Foundry,或者何时应该使用OpenWhisk?
在我使用OpenWhisk的有限经验中,这是我的想法。我喜欢将OpenWhisk视为一种易于实现的自动扩展架构,应用程序开发人员可以使用它而无需后端开发中的任何先验知识。我认为Cloud Foundry是软件堆栈中的较低级别,可能会为您提供更多自定义功能,但可能需要更多技能和知识来进行设置。
如果我......我会使用Cloud Foundry。
如果我......我会使用OpenWhisk。
希望有所帮助。
修改强>
这是我发现的一个很酷的图像,说明了这一点:
答案 1 :(得分:7)
CloudFoundry 是 PaaS(平台即服务)平台,简而言之,它主持您的应用程序运行的平台。平台的示例包括node.js或JVM。
OpenWhisk 是无服务器平台。 FaaS(功能即服务)一词似乎也在出现。您上传代码,该代码在事件发生时执行。该事件可能是任何事情,从简单的HTTP请求到数据库中发生的更改。
两者的根本区别在于操作方式。 PaaS意味着,您仍在运行服务器进程。一旦事件发生,您将有一个长时间运行的进程来监听事件并执行您的逻辑。所有其他时间,进程都处于空闲状态,仍然需要CPU周期和内存来实际监听事件。
在无服务器中,平台承担“倾听事件”的负担。事件发生后,您的代码将被实例化并执行。该代码之后关闭,因此不再需要任何资源。这也解释了为什么OpenWhisk动作的时间限制为5分钟。它并不意味着长期运行。
免责声明:这两个平台都比我在此描述的更多支持,我试图将其保持在两者之间最大的差异。