MEAN 组合

menu icon

MEAN 组合

MEAN 是否适合您? 了解 MongoDB、Express.js、AngularJS 和 Node.js 端到端组合为什么在现代 Web 应用程序开发中越来越受欢迎。
  • 创建经过云部署优化的可扩展应用程序
  • 在整个应用程序中使用单一语言简化开发
  • 使用内置 Web 服务器简化部署
  • 利用灵活的 MongoDB 管理海量数据

从头开始构建应用程序时,使用统一的标准化软件组合至关重要。 利用一系列协作工具创建后端,可帮助缩短开发时间并简化资源。

但是,这个软件组合领域变得越来越拥挤。 提供了从 LAMP 到 Ruby on Rails 的大量选项。每个组合都有各自的优缺点,而且适用于不同的项目。 开发时使用的工具组合并不是一成不变的。

什么是 MEAN?

MEAN 是一种相对较新的工具组合,是指 MongoDB、Express.js、AngularJS 和 Node.js。MEAN 是端到端的 JavaScript 组合,主要用于面向云的应用程序。 要最大程度利用 MEAN 在软件开发方面的价值,就需要了解为何可能会使用该组合,确定使用示例,并深入了解各个组件。

如果您想了解用 MEAN 组合开发应用程序并部署到云端有多便捷,IBM 提供了在 MEAN 组合中创建现代应用程序的简单教程 。

优点

MEAN 是一种开源 Web 组合,主要用于创建云托管的应用程序。 MEAN 组合应用程序非常灵活且易于扩展,它们是云托管应用程序的理想之选。该组合包含自己的 Web 服务器,因此部署非常方便,并且可以按需扩展数据库,以便应对临时使用峰值。 MEAN 应用程序经过优化,能够充分利用云在成本节省和性能改进方面的所有优势。

JavaScript 长期以来一直是用于前端 Web 开发的常用语言 - 具有灵活、动态和易于使用的特点。但它用于后端和数据库开发已有好几年的时间,支持开发人员使用端到端 JavaScript 创建应用程序。 由于 MEAN 的每个部分都使用相同的语言,因此有助于精简开发团队。 使用 MEAN 后,就不需要聘请不同的专家来开发应用程序的各个部分。 相反,可使用单一的 JavaScript 开发人员团队,根据需要随时随地开展工作,具备高度的适应能力。 JavaScript 的标准化还提供了在整个应用程序中复用代码的机会,从而减少了不必要的重复劳动。 

客户案例

虽然 MEAN 组合并非适用于所有应用程序,但在许多用例中都表现出色。 鉴于它的可扩展性和并发用户管理能力,因此成为开发云原生应用程序的理想之选。AngularJS 前端框架也使它成为开发单页应用程序(在单个页面上提供所有信息和功能)的理想之选。 下面是使用 MEAN 的几个示例:

  • 日历
  • 费用跟踪
  • 新闻汇总网站
  • 地图和位置查找
在 MEAN 堆栈上使用 MongoDB 的 Node.js 运行时的架构图

在 MEAN 堆栈上使用 MongoDB 的 Node.js 运行时的示例架构。

组件

MongoDB

MongoDB 是一种开源的 NoSQL 数据库,专为云应用程序而设计。 它使用面向对象的组织形式,而不是关系模型。

在 MEAN 组合中,MongoDB 用于存储应用程序的数据。 由于应用程序和数据库都使用 JavaScript,因此不需要在应用程序和数据库之间转换对象。 应用程序可以在后端和数据库之间推送和拉取对象,而不会丢失信息。

MongoDB 因其存储和性能方面的可扩展性而受到热捧。 可将个别字段添加到数据库而无需重新加载整个表,MongoDB 因其能够在不影响数据访问的情况下管理海量数据而知名。 只需几次单击操作,就可以扩展数据库的可用资源,使其完美适用于偶尔增加活动的应用程序。

要深入了解 MongoDB,请参阅“ MongoDB: 基本指南”。

Express

Express 是 Node.js 的 Web 应用程序框架。 它在易用性和完整功能集之间实现平衡。

Express 构成了 MEAN 组合的后端,负责处理前端与数据库之间的所有交互,确保数据顺利传输给最终用户。 它旨在与 Node.js 配合使用,确保在整个组合中以一致方式持续使用 JavaScript。

Express 奉行极简主义 - 旨在高效处理流程,避免让应用程序显得杂乱无序。 但不要将“简约”与“简单”混为一谈。 Express 提供了出色的错误处理和模板功能,因此有助于您完成开发工作。

Express 还可以防止您意外出错,因为它使用 CommonJS 模块标准,这可防止无意中覆盖共享名称空间中的变量。 因此,您不会意外地重新定义先前创建的变量。 执行 JavaScript 关闭可帮助防止耗时且代价高昂的错误。

AngularJS

AngularJS 是 Google 的 JavaScript 前端框架,虽然它不是目前使用的唯一框架,但它非常受欢迎。 它实际上是前端 JavaScript 开发的默认选择。 如果您使用 JavaScript 开发 Web 应用程序,那么就会使用 AngularJS。

MEAN 组合包含 AngularJS,后者可帮助开发人员构建应用程序中面向用户的那部分功能。 由于后端、前端和数据库都基于 JavaScript,因此信息能够在应用程序的所有部分之间顺畅流动。

由于错误的认知,AngularJS 并没有成为最受欢迎的 JavaScript 前端框架。 它能够同时开发桌面和移动版本,精调的性能和易于使用的模板使它成为了构建云原生应用程序的理想前端。

Node.js

Node.js 是一个开源 JavaScript 框架,可使用异步事件同时处理多个连接。 它是云端应用程序的理想框架,因为它可以根据需要轻松扩展请求。 在大多数最知名的 Web 应用程序背后,都可能找到 Node.js 的身影。

Node.js 是 MEAN 组合的主干。 Express 专为在 Node.js 上工作而构建,AngularJS 可与 Node.js 无缝连接,从而快速提供数据服务。 Node.js 与集成 Web 服务器配套,能够轻松地将 MongoDB 数据库和应用程序部署到云端。

Node.js 的最大优势在于其可扩展性。 最理想的云应用程序能够快速响应使用峰值。 如果仅在用户超时后才可用,那么几乎无限的处理能力又有何用呢? 通过扩展所需的资源,可以为更多用户提供服务,而框架的单线程架构支持应用程序在众多连接中有效地提供流畅的用户体验。 Node.js 最多可支持 100 万个并发连接。

请记住,Node.js 最适用于低资源请求,而不适用于资源密集型请求。 尽管单线程可防止进程死锁,但它无法避免某个大型进程冻结面向所有客户端的系统。

MEAN 组合与 IBM

MEAN 组合越来越受欢迎。 MEAN 组合的灵活性、一致语言和可扩展性等特点,使其成为任何以云为目标的 Web 开发的绝佳选择。

如果您想了解用 MEAN 组合开发应用程序和部署到云端有多便捷,IBM 提供了在 MEAN 组合中创建现代应用程序的简单教程

如果您已准备立即开始使用 IBM Cloud,请在此注册。