使用Zappa构建无服务器Python Web服务
1. 无服务器架构的背景与优势
在当今的软件开发领域,Web托管方式发生了巨大的变革。最初,物理服务器被多个Web应用程序共享,这在扩展方面面临巨大挑战,而且对于个人或公司来说,购买和维护整个服务器来托管Web应用程序成本高昂。
随着虚拟化技术的出现,为Web应用程序使用物理服务器的需求被消除了。虚拟化允许在单个物理服务器上创建多个虚拟服务器。如今,无服务器架构时代的到来,让开发者的生活变得更加轻松,因为开发者可以将精力集中在开发上,而不必在部署上投入大量的时间和金钱。
亚马逊推出了亚马逊弹性计算云(Amazon EC2)作为云计算解决方案。通过Amazon EC2,无需投资硬件,就可以在亚马逊云中创建一系列虚拟服务器或实例,并且可以根据网络、计算和存储需求进行扩展。无服务器架构的核心是消除了设置托管环境的手动工作量,云服务提供商提供无服务器服务,开发者无需拥有实际的服务器,代码将在高可用性的基础设施中由云服务提供商执行。
2. 技术要求
在开始使用亚马逊网络服务(AWS)构建无服务器应用程序之前,有一些技术先决条件需要满足:
-操作系统:所有演示均在运行Ubuntu 16.04的Linux机器上进行测试。
-库和软件:本书中使用的每个库都提供了链接,可以获取特定平台的安装和配置详细信息。由于使用的是开源库和软件,每个库的官方文档链接也会提供,以便获取详细信息。