1.Benchmarking, Analysis, and Optimization of Serverless Function Snapshots
https://zhuanlan.zhihu.com/p/572288442
这项工作引入了vHive,一个针对无服务器实验的开源框架,它使系统研究人员能够在整个无服务器堆栈中进行创新。vHive集成了来自领先的无服务器提供商的开源产品级组件,即Amazon Firecracker [5], Containerd [21], Kubernetes [37], and Knative,它们提供最新的虚拟化、快照和集群编排技术,以及用于功能部署和基准测试的工具链.
架构
贡献
我们发布了vHive,一个用于无服务器实验的开源框架,它结合了来自领先的无服务器提供商的生产级组件,从而跨其深度和分布式软件堆栈实现了无服务器系统的创新。
•使用vHive,我们演示了从快照启动函数的最先进的方法会导致低内存利用率,但由于延迟的页面故障和SSD访问的局部性差而导致高启动延迟。我们进一步观察到,跨调用访问的页面集会递出现。
•我们提供了REAP,这是一种记录和预取机制,它急切地从预先记录的跟踪中安装函数所使用的页面集。REAP平均将函数的冷启动时间提高了3.7×,而不引入内存开销或函数实例之间的内存共享。
•我们完全在用户空间中实现REAP,对爆竹管理程序进行了最小的更改,对内核没有修改。REAP独立于底层的无服务器基础设施,可以与其他无服务器框架和管理程序简单地集成,例如,型容器[3]和gVisor [28]。
工具
Jeongchul Kim and Kyungyong Lee. 2019. FunctionBench: A Suite of Workloads
for Serverless Cloud Function Service. In _Proceedings of the 12th IEEE International _
Conference on Cloud Computing (CLOUD). 502ś504. 测试套件,提供各种类型函数
2.The Power of Prediction: Microservice Auto Scaling via Workload Learning
在本文中,我们通过在一个微服务框架中设计了一个主动的工作负载和描述每个微服务的自动伸缩器。我们的自动缩放器可以实现比现有解决方案更好的服务性能。该设计背后的关键新颖之处在于,它可以利用不确定性学习来处理动态的微服务依赖关系,并采用操作系统级的指标,以更有效地进行资源扩展。我们的设计的一个限制是,根据服务SLA需求,它无法达到最佳的端到端资源效率。在动态微服务依赖和微服务多路复用的背景下探索这个问题将是我们未来的工作。
考虑微服务之间的依赖,不确定性。
3.云原生系统Serverless的性能评估与优化_林彦颖
(1)设计了针对云原生Serverless系统的突发性负载的跨层性能感知基准套件-BBServerless,实现了对云原生负载的精准评估。本文通过研究云原生Serverless系统的函数及其代表性负载,从复杂性、敏感性与资源干扰等方面对其进行精准画像,提取了Serverless系统的应用性能特点以及其在资源管理和调度策略上的重要特征。同时,在此基础上设计了具备端到端、操作系统、硬件级别的多层感知能力的性能基准测试套件。最后利用BBServerless对3个代表性平台的多层次性能指标进行综合分析,在此基础上观察到7个平台设计中存在的性能瓶颈,并分析了性能瓶颈的原因。
(2)提出了基于位置感知的Serverless系统函数调度算法,解决时间局部性组件性能不足问题,优化了平台性能。本文在基准套件所表征出的性能特性基础云原生系统Serverless的性能评估与优化上,针对Serverless系统的函数调度和优化策略进行研究,提出结合位置、亲和性感知和贝叶斯近似估计的综合调度策略。特别的,针对Serverless系统的“函数短生命周期”、“轻量化”和“函数动态交互”等特性所带来的性能问题,提出了基于局部性原理的性能优化方法。实验结果表明,所提出的方法有效地提升了Serverless负载的端到端性能。
4. Mitigating Cold Start Problem in Serverless Computing: A
Reinforcement Learning Approach
本文提出了一种新的两层自适应方法来解决这一问题。第一层利用一个整体的强化学习算法来发现随时间变化的函数调用模式,以确定保持容器温暖的最佳时间。第二层是基于长短期内存(LSTM)设计的,以预测未来的功能调用时间,以确定所需的预热容器。