开发者所要了解的无服务器技术
作为一名开发者,你必须实时关注技术方面的进步;我们今天主要说的是开发者应该如何使用无服务器技术。无服务器技术或许会让你觉得很奇怪,但是就其所带来的价值而言,对于移动应用开发者来说都是大有益处的。
无服务器技术于2014年问世,当时亚马逊网页服务(AWS)推出了AWS Lambada无服务器计算服务。在该技术中的竞争始于2016年,当时云服务供应商都在朝着这个方向发展,而这只不过是该技术的开端。
2017年,Gartner发布了他们的年度战略技术趋势,该公司描述了无服务器技术是如何成为Meshapp和服务架构的一部分,即通常所说的MASA。MASA架构是一种多渠道解决方案,通过利用API,容器,微服务,无服务器计算和云技术来提供灵活、动态以及模块化的解决方案。开发者会开发更多的工具来达成这一目标。
这也是为什么我们将要讨论移动应用开发者应该了解无服务器技术。现在我们就来说说看:
服务器依旧在服役
无服务器技术可以被描述为能够替代具有计算能力的虚拟机,能够在需要时被调用,并且使用后会消失。在无服务器架构中,它包括后端即服务(BaaS)和函数即服务(FaaS)。具体的事件会唤醒函数,函数即一个可以在容器内运行的小的代码包,当任务完成的时候,代码就会消失。
这一概念并不意味着服务器没什么用了,事实上在这个过程中还是需要服务器的参与。无服务器计算和云服务的区别在于服务器并非总是在无服务器架构中运行的。此外,你并不需要自己管理服务器或者担心服务器扩展。你只需要部署代码,然后就可以去做自己的事,由于服务器只有在需要时才会运行,所以成本很低。
为服务买账
作为一名开发者,你所开发的应用程序应兼顾无服务器架构的低成本,高效率的特性。在无服务器架构中,你并不需要为闲散资源买单,这是个巨大的优势,因为公司能够减少操作中所需要的成本。
云经济管理公司的一份研究显示,大多数的虚拟机实体操作负载率都在20%。在无服务器架构中,你只需为你所使用的资源买单,以此来避免虚拟机所产生的问题。
此外,无服务器也能提供Free Tier服务。这项技术的强大之处之一是,在无服务器会议上,AWS Lambada展示了两个现实中的应用程序,并且也从不会超过Free Tier的限制。这些应用程序不需要向AWS支付任何费用。
注重开发
在过去的几年中,技术一直在发展,从云技术节省了公司的投资数额到使用无服务器架构从而不需要人们对云虚拟机进行管理。
开发者现在可以不必担心服务管理从而可以注重移动应用开发,因为你所担心的会由无服务器供应商承担。公司也会有足够的时间进行创新和开发移动应用。此外,由于无服务器技术提供了简便的开发方式,因此更容易上市。
微服务依然会存在
微服务被用来将代码分离处理形成小型的服务,能够简化开发和部署阶段。虽然在无服务器技术中大量使用函数,微服务仍然会被使用,这是由于函数的粒度决定了其并独立完成任务。例如,如果你当前的API需要数据库的协作,那么就会获得快速响应,因为因为准备工作已经完成,但是当涉及到函数时就不是这样了。
更加重要的是,作为一名开发者,你需要知道微服务就像是一个函数组。微服务和函数能够以互补的方式并存。终端用户并不会感知其中的差别,但是对于开发者来说,PI作为一组应用程序或微服务的执行方式很重要。
原文作者:Amit Tiwari
往期精选
围观
热文