随着开发者们寻求为终端用户提供更好的应用程序和/或系统,选择正确的应用程序堆栈至关重要。《云计算》(https://mongodb.ac.cn/cloud-database/cloud-computing)提供了广泛的服务和计算能力,无需承担整个组装操作的重负。《云架构》(https://mongodb.ac.cn/cloud-explained/cloud-architecture)使我们能够满足我们对应用程序基础几乎所有想象的部署架构,从数据服务到安全以及与第三方服务的集成,提供所需的任何处理。
云计算架构的一种方法是以服务为导向的《云架构》(https://mongodb.ac.cn/cloud-explained/cloud-architecture),它是围绕云计算堆栈构建的。在这篇文章中,我们将探讨云计算堆栈的含义以及MongoDB和《MongoDB Atlas》(https://mongodb.ac.cn/cloud/atlas)如何为您的云计算堆栈提供动力。
让我们先了解云计算堆栈及其含义。
目录
云计算可以被描述为一种由层组成的堆栈,类似于蛋糕。这些层将使用云计算服务、服务器和组件构建,可以利用几个不同的云形成一个单一的应用程序堆栈。堆栈的网络稳定性和可扩展性将决定其弹性和高可用性。
让我们更熟悉云世界中常见的云堆栈组件和概念。
软件即服务提供的是一项技术(通常是软件)作为服务消费——例如,GitHub源代码控制。您可以选择在本地托管和管理Git源代码控制,或者使用GitHub的托管源代码控制。
“软件即服务”的新变体之一是“数据即服务”。
数据即服务将几种软件服务结合形成一个数据平台。
MongoDB Atlas是一个数据平台,提供了不同的服务,为您提供满足数据需求的单一整体解决方案。这种类型可以提供针对数据处理/存储和可视化的不同堆栈层。
平台即服务提供了一些高度集成的软件产品/技术,以形成支持应用程序开发和维护的解决方案。
Heroku和Google App Engine是平台即服务的一个例子。这些服务托管和集成您的代码到其他耦合服务中。
Atlas App Services云服务形成了一个类似平台即服务的概念,您可以将其云函数和应用程序内容作为服务托管。
基础设施即服务是目前您可以期望从云计算提供商那里获得的底层服务之一。本质上,它提供服务器、网络和虚拟资源,以运行您所需的计算和云存储能力。
这类服务的一个例子是AWS EC2提供的服务,您可以在其中部署服务器/网络和安全策略,由AWS云API管理。
MongoDB在提供MongoDB Atlas集群时使用IaaS。
为了可视化这些类型的层次结构,我们可以查看以下图像
在某些情况下,用户可能会为整个应用程序栈选择云计算的某一种类型。然而,在其他情况下,他们可能会使用任何一种类型来构建应用程序栈,这在微服务领域很常见。
图中的绿色方块代表形成应用程序栈的云服务。安全层必须跨越所有组件的通信和活动,验证和保障网络以信任的方。
MongoDB Atlas,MongoDB的数据服务,提供所有云计算栈层的功能,为终端用户提供一整套解决方案。
Atlas App Services,MongoDB的移动数据库和应用开发服务都是Atlas平台的一部分,提升了MongoDB云栈。
让我们来看看可用的选项。
几乎每个人——至少在消费基础上。几乎每个在线应用程序都会直接或间接地使用云服务。今天,公司正在将运营的各个方面推向云端,进入面向服务的体系结构。无论您使用GitHub来管理代码生命周期,还是在云服务提供商上配置服务器,您都在使用云服务。
MongoDB Atlas发展迅速,我们看到越来越多的开发者正在使用MongoDB云栈来推动他们的应用程序。一个例子是WildAid O-Fish应用程序,该应用程序使用MongoDB Atlas、MongoDB Charts和Atlas App Services,并基于iOS和Android客户端(SDK)。
要深入了解O-Fish架构,请阅读以下博客文章。
使用云栈作为应用程序栈的主要好处是
因此,MongoDB数据平台被开发者广泛采用,以提高他们使用现代平台创新现代应用程序的生产力。
回答这个问题并不简单,因为涉及到多个因素,需要选择合适的服务来构建目标。然而,MongoDB Atlas平台是构建现代、可扩展应用程序的基础。
如果您正在寻找像虚拟机和网络这样的底层服务,这些服务可以为您带来更广泛的定制能力以满足您的需求,那么IaaS是您的最佳选择。然而,如果您需要一个更快、更易于管理的解决方案,以便将精力集中在开发业务逻辑和开发者生产力上,那么SaaS和PaaS可能更适合您。由于应用程序堆栈的各个模块可能具有不同的安全和部署需求,因此它可能使用几种不同类型的云堆栈。
使用Atlas的一个优点是,它提供了多种定价模式,允许您选择是否需要通过我们的专用计算基础设施获取稳定的计算速率,或者您需要一个可以根据您的负载增长和缩小的无服务器环境来满足您的使用案例。此外,您不需要锁定在任何云服务提供商中。在MongoDB Atlas中,进行简单的云迁移或跨多个云操作是核心功能。
MongoDB的数据模型的灵活性是满足现代应用快速变化需求的关键。此外,灵活的架构和MongoDB Atlas数据平台敏捷性有助于您将应用程序调整为微服务概念。这意味着随着您的旅程的推进,您可以轻松地更改或升级云堆栈以添加新的服务。
今天的大多数应用程序,尤其是Web和移动互联网应用程序,都是部署和运行在云计算服务上的。请阅读以下关于云架构的文章以获取更多信息。
三种常见的类型是