什么是云?
前端开发者!您是否想过为什么要为项目选择某种类型的数据库、如何创建 API、如何部署到 AWS,或者什么是容器?您来对地方了!本系列将为您讲解后端开发的所有知识,这些知识专门针对前端开发者:您懂编程,可能听说过一些后端术语,但您并不认为自己是全栈开发者。您将学习后端概念以及如何使用 AWS 实现它们。
在本系列的第一篇文章中,我们将首先定义什么是后端,后端开发中存在哪些困难,然后讨论什么是云以及它与后端开发的关系。
什么是后端开发?
传统上,前端开发人员和后端开发人员的定义是:前端开发人员在客户端工作——他们构建与用户交互的界面。后端开发人员则负责服务器端代码。这包括构建 API、数据库交互以及处理服务器配置。我的职业生涯始于后端开发人员,主要致力于构建数据科学系统——我必须认真考虑可扩展性、如何处理和分析大量数据,以及如何以可靠的方式部署这些系统。
后端开发人员可能需要回答的一些问题包括:如何扩展系统以支持百万用户?超过百万用户又如何?需要存储多少数据?需要多快的访问速度?是否有需要管理的长期运行任务?构建这些系统时,必须权衡诸多利弊。我们将在本系列文章中讨论其中的一些问题。
后端开发的一个重大发展是云计算——尽管它影响着几乎所有的在线用户,而不仅仅是后端开发人员。
什么是云?
云允许您按需访问计算机资源。您可能使用过 Google Drive 或 iCloud 在线存储文件,而不是使用自己的电脑或手机,这样可以节省更多存储空间。这是一个完美地展现云如何应用的例子。
许多公司也使用云作为其服务器基础设施。您可能之前听说过服务器,它们本质上是向其他计算机发送信息的计算机。我们使用它们来处理网站的请求/响应周期——它们接收请求,并基于此处理业务逻辑、数据库查询等,然后将响应发送回客户端。
数据中心——容纳公司所需的所有服务器,随着公司的发展,他们会购买越来越多的服务器。他们需要专人管理数据中心,并自行安装软件和维护服务器。
云允许您访问并使用提供商的服务器,而无需自行管理数据中心。这为公司带来了诸多好处,首先,您只需按实际使用量付费,而无需为数据中心购买所有服务器。此外,大多数云提供商都提供全球可用性,您无需在世界各地建立数据中心来加快全球响应速度——云提供商会为您完成这项工作。此外,您无需自行支付数据中心或数据中心员工的费用,这些费用由云提供商承担。AWS 的白皮书对这些优势进行了更详细的解释。
云服务有不同的类别。
- 基础设施即服务 (IaaS) 是最低级别的服务,您可以更好地控制服务的操作系统和运行时。例如 Amazon EC2 和 Digital Ocean。
- 平台即服务 (PaaS) - 提供云组件,用于管理应用程序逻辑和数据,而无需管理服务器或任何底层组件。例如 Heroku 和 AWS Elastic Beanstock。
- 软件即服务 (SaaS) - 最终用户直接使用,无需云管理的云服务。例如 Dropbox、iCloud 和 Slack。
- 函数即服务 (FaaS) - 允许您仅将函数部署到云中,而无需进行服务器管理或类似操作。AWS Lambda 就是一个很好的例子。
顺便提一下,AWS,即亚马逊网络服务 (Amazon Web Services),是一家云服务提供商(也是我的雇主),拥有超过 200 种不同的云服务。在本系列文章中,我们将讨论其中的一些服务。
结论
下次,我们将更深入地探讨使用云的后勤工作。如何设置带有账单警报和 IAM 用户的 AWS 账户?如果您希望在本系列中解答任何主题,请在评论区或Twitter上告诉我。
鏂囩珷鏉ユ簮锛�https://dev.to/aws/what-is-the-cloud-1n65