无服务器技术可有助于提高灵活性并降低云整体成本。为了充分利用好这些优势,请务必精心设计并管理好您的无服务器应用程序。
无服务器计算也被称为功能即服务,它是云圈子里目前最为热议的新技术。虽然它并没有真正地摆脱服务器的束缚,但是它确实使复杂应用程序的部署与管理变得更为简便、更具成本效益。
云供应商看到了市场对无服务器计算越来越大的兴趣,从而推出了他们自己的服务来支持这些新技术的应用。亚马逊网络服务(AWS)是第一家使用AWS
Lambda来进行市场推广的企业,而Azure Functions和谷歌Cloud
Functions则在若干年之后才被推向市场。所有这三项服务都让无服务器技术能够更容易地在企业用户中被推广开去。
下文将介绍SearchCloudComputing收集的五个贴士,您可以看看无服务器模式是否能够让您受益。
无服务器计算帮助企业用户减少对云资源的担忧
无服务器计算技术已经进入企业,因为它能够简化部署,让开发人员能够更多地关注应用程序功能本身而不是诸如虚拟机调配这样的工作。无服务器技术的新兴应用包括了图像处理、任务管理、工作流程与通知。
对于诸如FireEys公司这类安全厂商来说,无服务器计算模式要比传统按需实例方式更为节省成本,正在使用AWS Lambda的一名运营工程师Joseph Kordish说。
但是,需要注意的一点是无服务器技术所带来的可靠性、灵活性和成本效益可能并不适用于所有类型的应用程序。检查用户的工作负载,以确认它们是否能够从无服务器技术中受益。
(FaaS的兴起)
针对无服务器计算制订云成本管理策略
在所有的云部署中,成本管理是非常重要的,其中也包括了无服务器计算。与公共云模式中空闲应用程序仍然会产生CPU或虚拟机成本不同,无服务器技术只需要用户在每次执行应用程序组件时付费。
尽管如此,沉重的工作负载最终还是会让你在收到账单时大吃一惊。
第一步是看供应商的价格。一般来说,他们会根据执行应用程序时间的数量、这些事件所使用资源的数量以及它们的运行时间来定价。请注意您的无服务器应用程序将需要的任何其他功能(如数据库),因为供应商们将为此向您收取费用。
接下来,就请查看您的无服务器应用程序、了解它们拥有多少的组件以及这些组件的运行频率。对于具有高度可变形的较小型工作负载来说,无服务器技术是更具成本效益的。您可以先对您的无服务器应用程序进行测试以估计其成本。
无服务器计算如何影响云运营团队
一些新技术都会对云运营团队带来一定的影响,它们会迫使他们重新思考他们的流程——无服务器技术正是其中之一。
无服务器计算是基于事件的,这意味着一个事件会触发应用程序的运行。如上所述,恰恰是这一点改变了云成本管理的实际做法。另外,云运营团队还需要改变他们扩展规模的方法。事实上,我们是无法按需扩展所有的无服务器应用程序及其各个组件的,重要的是要确保当启动新组件来处理负载高峰时,核心业务应用程序的运行性能不会受到影响。
(图片来源于网络)
云运营团队还需要使用正确的工具来管理无服务器应用程序。请记住,除了价格因素以外,还要评估供应商的工具集及其运营数据。这些工具不同于确保虚拟机运行性能的传统云运营工具,它们对于无服务器应用程序的管理来说是至关重要的。
充分利用公共云中的无服务器应用程序
开发人员和云管理员都需要为无服务器计算技术所带来的变革做好准备。
例如,开发人员必须适应无服务器应用程序的结构并了解它们是如何进行数据交互的。与传统的单一应用程序不同,无服务器应用程序将软件分解成为许多的独立功能。云管理员必须管理每一个功能并跟踪其运行性能、使用情况以及成本。幸运的是,大部分的云供应商都提供了相关监控工具。
管理员们还应定期与开发人员共享管理信息,以便实现持续开发并优化性能与成本。此外,由于不同公共云供应商之间的功能是不可移植的,所以管理员们应当提防受制于单个供应商的风险。
确保无服务器应用能够使用部署技巧进行扩展
可扩展性是云的最大优势之一,但是在无服务器技术方面还存在着一些挑战。有着如此之多的功能需要启动运行,此外用户还需使用更多资源来支持日益增加的运行负载,分布式负载平衡服务也是必不可少的。可以遵循适用于无状态应用程序的最佳实践,例如使用诸如Apache
ZooKeeper之类的工具套件来编写应用程序,这类工具套件可以管理分布式应用程序副本。
就部署方面来说,控制是实现可扩展性的关键所在。将应用程序副本的数量控制在最小范围,当没有更多需求时进行规模缩减。此外,还要执行严格的条件使最终用户能够创建新的应用程序副本。
本文转自d1net(转载)