Serverless无服务器架构的优劣

Serverless

本文基于SWOT分析法,总结Serverless目前的优劣,以及在实践过程中可能遇到的风险与机遇。

Strengths

  • 按需付费

    用户根据代码调用的次数和运行时间计费,时长计量颗粒低至百毫秒级别,用户只需要为代码实际运行消耗的资源付费,代码未运行则不产生费用

  • 降低开发成本

    根据Serverless提供的一系列的函数计算模板,开发者只需要填写好服务需要的配置即可。这一系列的服务都可以自动、高效的完成

  • 自动扩展能力

    开发者无需关注应用的负载均衡,虚机的存储和计算资源,应对更多请求时,Serverless会自动的扩容

Weaknesses

  • 不适合长时间运行应用

    Serverless 在请求到来时才运行函数,这意味着,当应用不运行的时候就会进入 “休眠状态”,当请求再次来临时,应用需要一个启动时间

    如果应用需要长期不间断的运行、处理大量的请求,那么就不适合采用 Serverless 架构

  • 完全依赖于第三方服务

    当用户采用 Serverless 架构的时候,就和特定的服务供应商绑定了,假如用户使用了AWS的Serverless服务,由于兼容性问题,当他再想把应用迁移到阿里云上时,可能会增加很多额外的成本

  • 配置复杂

    根据很多实践过Serverless架构的工程师反映,Serverless的配置相当复杂,在试验时需要进行很多繁杂的配置,更别提生产环境的复杂程度了

Opportunities

  • 云厂商的大力支持

    近几年随着Serverless架构的兴起,越来越多的云厂商提供了FaaS(Function as a service)的解决方案

  • 丰富的实践

    很多知名公司都开始尝试使用Serverless,如新浪微博、石墨文档、芒果TV等,相信Serverless会被更多的企业接受

Threats

  • 数据安全性

    使用Serverless架构,大量的数据需要部署在公有云上,数据的隐私和安全性存在一定风险

  • 服务的稳定性

    使用Serverless架构,意味着应用严重依赖于特定的云平台和第三方服务,如果要做多云融合可能会遇到更复杂的问题

  • 兼容性

    在有基础设施的条件下,OpenStack提供的Serverless方案Qinling无法与第三方服务商的方案兼容,这又回到了上一个问题,即应用严重依赖于特定的云平台

以上,仅供参考

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容