更一般的问题-假设我的所有技术堆栈都必须在K8S上(例如,云供应商不可知):我应该何时在K8S之上使用无服务器(例如,nuclio,kubeless) -以及何时保持docker服务?我之所以这样问,是因为我为他们两个免费获得的“自动伸缩”--所以我想知道什么时候我应该使用另一个框架……
为了简化-假设一切都是stateless...no会话
发布于 2019-08-21 16:08:50
我首先要说的是Serverless是比Docker容器更具创新性的技术。然而,它们都有各自的优点和缺点。
无服务器
从Serverless开始,可以为几乎任何类型的应用程序或后端服务构建它们,并为您处理运行和扩展具有高可用性的应用程序所需的一切。
优点:
缺点:
Docker容器
Docker是一个容器化平台,它将您的应用程序及其所有依赖项打包在docker容器中。
优点:
缺点:
结论
如果你想减少应用程序管理并且不关心架构-- Serverless是最好的选择。如果您希望在指定的系统架构上部署应用程序并对其进行控制,那么Docker容器是最好的选择。因此,当比较Serverless和Docker时,归根结底是选择更适合您特定需求的。
我鼓励阅读interesting article关于这方面的文章。
发布于 2020-10-10 10:50:53
我正在使用为Kubernetes创建的无服务器框架:Kubeless。这很棒,因为您希望维护与云供应商无关的架构。
Kubeless函数在引发某个事件(HTTP调用或某个cron作业)时触发。但是,在您的基础架构中,您应该始终至少运行一个容器来执行您的代码。Kubeless就是这种情况,它会像其他容器一样根据需求自动缩放。
请记住以下几点:
HTTP
因此,如果您需要更高级的、支持HTTP方法的、具有更多业务逻辑的东西,我建议您使用传统的API方法,它更易于维护和监控。
查看基于如何使用Kubeless实现无服务器功能的this文章。
https://stackoverflow.com/questions/57514959
复制相似问题