IBM Watson研究人员分享Mesos上无服务器计算的技巧


无服务器计算是云计算领域的最新趋势,该趋势出现在企业向容器和微服务演进的过程中。

无服务器计算平台承诺的新功能可以让编写可扩展的微服务更为容易,并且更加高效,IBM软件工程师Diana Arroy和研究员Alek Slominski说。

即将到来的MesosCon Europe大会上的演讲里,在IBM的Watson研究中心工作的Arroyo和Slominski,会分享他们在Apache Mesos环境里运行无服务器工作负载时为了满足OpenWhisk的性能要求所收获的经验教训,OpenWhisk是IBM的无服务器开源计算平台。

这里,他们定义了无服务器计算,讨论它是如何让微服务更容易实现的,并且开始定义是什么让Mesos成为无服务器工作负载的理想平台。

Linux.com:什么是无服务器计算?

Diana Arroyo & Alek Slominski:无服务器计算的最基础的级别是按需运行某段代码(某个功能,事件处理器,操作等等),无需在什么服务器上管理执行了什么东西或者如何完成扩展。在我们的工作里,我们关注于无服务器工作负载的核心特征:在Mesos集群里运行数千个并发的短时间容器,它们在几百毫秒(或者更短时间)内完成创建以及销毁。

Linux.com:它是如何让微服务更容易实现的呢?

Diana & Alek: 微服务起始关注于创建能够提供某个定义良好的功能的服务——它并不是说服务很小(因为一个微服务可能有很多用户,并且需要扩展),而是让它足够简单,能够在短时间内完成微服务的功能。从这个角度看,无服务器计算可能会成为实现微服务的理想选择:再也不需要担心为微服务管理服务器!

Linux.com:在什么场景下最适合使用无服务器架构?

Diana & Alek:无服务器计算很适合那些只需要短时间(毫秒到秒级)就能完成运行的代码。一个典型的例子是将事件处理器作为无服务器功能运行,因此它能够处理事件,并且我们无需担心代码在哪里运行,或者当有大量事件需要处理时如何做扩展。

Linux.com:为什么说Mesos是无服务器工作负载的理想平台?

Diana & Alek:不太可能某一种计算模式(比如,无服务器,容器,或者VM)会彻底一统天下。更有可能的是不同的模式需要一起合作,而Mesos框架提供了很好的抽象,允许用户在一个共享的集群里运行所有的计算模式。因为无服务器工作负载包含很多很短生命周期的,能够提升效率的工作,无服务器功能可以调度来使用可用的计算能力。

Linux.com:在Mesos上运行无服务器工作负载有什么调优的技巧么?

Diana & Alek:对于无服务器工作负载而言,让Mesos offer的分配能够尽可能快地传递给Mesos框架很重要。我们发现将默认的offer拒绝超时时间过滤器从默认的5秒修改为10毫秒,可以获得极大的性能提升。过滤器基于过滤条件告知Mesos的分配器不要再发送offer,从而让框架可以快速拒绝offer。在Swarm框架里,它是用来编排无服务器工作负载的,我们将超时参数(mesos.offerrefusetimeout)降低为10毫秒,这样可以带来大概10倍的速度提升。

原文链接:IBM Watson Researchers Share Tips for Serverless Computing on Mesos (翻译:崔婧雯 校对:)

===========================
译者介绍
崔婧雯,现就职于IBM,高级软件工程师,负责IBM WebSphere业务流程管理软件的系统测试工作。曾就职于VMware从事桌面虚拟化产品的质量保证工作。对虚拟化,中间件技术,业务流程管理有浓厚的兴趣。

0 个评论

要回复文章请先登录注册