企业架构原则 - 模型驱动型开发、微服务、容器和无状态 | Mendix 评估指南

Skip navigation

Architecture Principles

Mendix 平台背后的主要架构原则是什么?

在整个 Mendix 平台中,我们嵌入了多项(技术)原则,以确保生成企业就绪型应用程序。对于 Mendix,“企业就绪”意味着这些应用程序必须可维护、可执行和可扩展。同时也意味着这些应用程序可以有效应对后端企业系统的所有复杂功能,进而顺利集成到任意企业环境中。

Mendix 如何实现模型驱动型开发?

模型驱动型开发 (MDD) 已经成为实现快速应用程序开发的一大主要方法。MDD 使用可视化模型定义应用程序逻辑、流程和用户界面,使开发人员和业务用户都可以快速构建应用程序,省去了劳动密集型的低级编码。因此,它比诸如 C# 和 Java 的传统编程语言要快得多。为了使业务用户能够积极参与到应用程序的设计和开发中来,我们完全采用了可视化 MDD 方法。MDD 提供了一种出色的沟通机制,可以使业务和 IT 利益相关者达成一致意见,从而确保获得更高质量和更成功的结果。

Mendix 如何优先考虑模型解释而非代码生成?

Mendix Runtime 可以直接执行模型,这意味着模型就是实际意义上的应用程序,而非中介程序。可视化模型设计(如 Java 或 .NET)的本质是生成代码,而与此相反,Mendix 的模型解释方法具有许多独特的特点和优势

有关更多信息,请参见博客文章模型驱动型开发:生成代码还是模型解释?

Mendix 如何利用微服务、容器和部署标准化?

微服务提供的软件架构最适合小型 DevOps 团队,这种架构可从容器质量中获得最大收益。容器使您能够以自动化方式在任意云中部署应用程序,并能确保质量、可重复性和速度。部署标准化使小型 DevOps 团队可以处理任何与操作有关的事。

Mendix 如何有效发挥无状态的作用?

现代 Web 规模的应用程序可将无状态架构作为支持更大可扩展性和韧性的一种手段。无状态性允许根据需要轻松添加其他资源来支持水平可扩展性,从而支持不断增加的用户或处理负载。每个用户请求和每项事务可由任何可用的运行时实例进行处理。如果您的性能需求要求您处理更多的事务或用户请求,您只需添加另一个运行时实例处理其中的部分即可。由于可以在运行时之外进行状态管理,因此可以更容易地将故障从一个运行时实例转移到另一个运行时实例,从而提高系统韧性。

Mendix 提供怎样的开放性和可扩展性?

开放性是任何现代应用程序平台的基本架构要求,意味着平台应使得应用程序能够轻松兼容和使用其他应用程序和应用程序服务。这也意味着平台本身应适合您的 IT 环境,并支持您的核心开发流程和标准。

只靠纯粹的模型驱动型开发方法几乎不可能解决企业的功能和非功能需求,因为总会有抽象泄漏发生。可扩展性对于满足企业应用程序的所有实际功能需求和非功能需求至关重要。如果模型解释不允许您更改生成的代码,那么您的应用程序必须具有可扩展性。

有关此主题的更多详情,请参见开放性和可扩展性

Mendix 如何遵循十二要素应用程序原则?

尽管十二要素应用程序方法还未形成一套严格的架构原则,但这一(最初由 Heroku 团队开发)方法是一套行之有效的最佳实践,可以帮您规避在构建云原生应用程序时涉及的一系列常见系统性错误。

有关如何将此方法应用于 Mendix 的详情,请参见 Mendix 运行时如何支持十二要素云原生应用程序?