低代码开发平台—Mendix架构体系概述(二)
Platform Architecture
Mendix平台架构的关键组件是什么?
Mendix平台是一个完全集成的应用程序平台即服务(aPaaS)产品,用于设计,构建,部署和管理企业应用程序。开发人员和管理员可以通过Developer Portal登录Mendix平台, 获取应用程序和服务的访问,用于应用程序和应用程序服务的操作和管理中的需求管理、开发和部署。Mendix平台包括Mendix Studio Pro,Mendix Studio,以及拥有数百个公开的构建模块来加速开发的Mendix Marketplace。Mendix Marketplace还可以配置为私人使用,这样应用程序和构建模块可以在整个组织内共享。Mendix平台特点是用户可以通过Developer Portal,、Mendix app、 Mendix Studio 和 Mendix Studio Pro进行在线写作。
下图提供了Mendix平台的关键组件的概述。
主要的Mendix平台模块和服务有哪些?
以下部分详细介绍了Mendix平台的主要模块和服务:
Developer Portal
Mendix Studio 和Mendix Studio Pro
Team Server
Build Server
MxID
通过Developer Portal进行部署
AppStore
01
什么是Developer Portal?
Mendix Developer Portal是一个用于设计、开发和部署应用程序的协作环境,具有在线社交协作功能(通过Buzz)、通知服务以及可针对性地邀请公司内部相关人员参与应用程序项目的协作。
您可以依据Scrum方法论在Developer Portal中执行大部分需求的管理和跟踪,定义sprint和故事、追踪进度以及查看项目的进展。另外,Developer Portal托管在AWS上的Mendix公共云。
02
什么是Mendix Studio和Mendix Studio Pro?
Mendix Studio Pro和Mendix Studio是Mendix平台的多用户建模IDE。Mendix Studios提供一个集成的、统一的建模空间,在这个空间中,业务分析师和IT工程师可以紧密合作,为各种应用程序元素建模。Mendix Studio Pro是在开发人员的计算机上本地运行,并具有完全脱机工作的集成构建服务,而Mendix Studio则托管在Mendix Cloud上。
03
什么是Team Server?
Team Server是用于管理和版本化应用程序模型的中央存储库。Team Server是作为Subversion (SVN)的扩展而编写的一种被广泛采用的开源软件配置管理系统。团队服务器可以托管在Mendix Cloud中,也可以在本地部署。
04
什么是Build Server?
Build Server从Team Server上的应用程序项目中的构件(如模型、样式表和自定义Java类)创建部署包,其中所有应用程序构件都已版本化并存储在项目文件夹中。Build Server由Developer Portal或Mendix Runtime触发。Build Server还能执行数据包验证,确定特定构建是否是可部署的数据包。
05
什么是MxID?
MxID是一种应用OpenID标准的用户管理和配置服务,并能与活动目录和单点登录(SSO)协议集成,并为Developer Portal (Mendix apps的中央访问门户)提供登录服务器。
此外,MxID还提供了一个用于管理公司和应用程序用户的管理门户。
06
如何解释通过Developer Portal进行部署?
通过Mendix Developer Portal进行部署,方便您管理环境和配置,以及能将应用程序一键部署到云端进行管理和监控其性能。Developer Portal是平台里部署服务层的接口,Mendix也提供用于部署到SAP Cloud Platform和IBM Cloud的接口。
07
什么是Mendix App Store?
Mendix App Store是应用程序和应用程序构建块的开放市场,还可以配置为私有企业应用程序商店,这样最终用户和业务经理都可以访问组织内的应用程序。
Cloud Architecture
Mendix部署体系结构是什么样的?
Mendix在哪里托管我的应用程序?
应用程序隔离是如何实现的?
Mendix Cloud如何提供高可用性?
Mendix如何提供故障修复?
Mendix Cloud如何提供自动恢复和自动修复功能?
01
Mendix的部署体系结构是什么样的?
Mendix Cloud是基于PaaS的云产品,基于Cloud Foundry技术,在Amazon Web Services的IaaS层上运行。Mendix应用程序是在Cloud Foundry的容器中运行,容器提供了对水平和垂直扩展以及自动修复的标准支持AWS。因为只是添加或删除容器的问题,所以可以在不需要停机的情况下进行扩展。Mendix Cloud Foundry层部署在每个区域的多个可用区域中。可用区域是AWS在区域内的物理数据中心位置。
Mendix应用程序的运行需要数据库和文件存储的支持,在Mendix Cloud中,这些aPaaS服务直接从AWS服务层使用。对于数据库,Mendix Cloud使用RDS PostgreSQL,对于文件存储,它使用S3。因为这两种服务都是多AZ配置的,所以可以跨数据中心复制数据。
02
Mendix在哪里托管我的应用程序?
Mendix Cloud在美国、亚太地区和欧盟提供托管设施。如果贵公司需要,Mendix可以保证您的数据不会离开托管地区。
03
应用程序隔离是如何实现的?
在Mendix Cloud中,逻辑术语“环境”用于描述应用程序隔离;每个应用程序都在独立的环境中运行,并且在计算、记录和存储方面与其他应用程序完全分离。Mendix应用程序在环境中的一个或多个Mendix Runtime引擎实例上运行(单个应用程序的专属环境)。另外,每个应用程序都拥有专用的数据库和S3 bucket,从而在数据级别上实现完全隔离。
04
Mendix Cloud如何提供高可用性?
Mendix Cloud为所有企业提供了高可用性选项,确保在Mendix Runtime中断时实现零停机。用户可以使用Developer Portal来扩展Mendix应用程序环境;当选择了多个实例时,就算一个实例失败,应用程序还会继续运行。
05
Mendix如何提供故障修复?
Mendix云架构将runtime 引擎和数据库保持在同一可用区(AZ)中,从而最小化数据库操作的延迟。如果当前AZ出现故障,它会自动地将故障转移到其他区域的AZ;应用程序的新副本也将在新的AZ中自动启动。AWS会在多个AZ自动复制文件存储桶,通过Mendix Fallback选项,还可以通过流自动复制数据库,或者您可以将备份还原到新的AZ。
06
Mendix Cloud如何提供自动恢复和自动修复功能?
Mendix Cloud支持在同一可用性区域内进行自动恢复和故障转移,用户负载在两个runtime引擎之间保持平衡。
在个别runtime引擎崩溃的罕见情况下,另一个runtime引擎会自动接管所有用户请求,同时Cloud Foundry Health 管理器会使用新的runtime 引擎来替换掉已崩溃的runtime引擎。Mendix的无状态架构保证了最终用户不会受到此类故障的影响。
关于Mendix
Mendix,a Siemens business是全球企业级低代码的领导者,正在从根本上重塑数字化企业构建应用的方式。企业可通过Mendix低代码软件快速开发平台来扩展自身的开发能力,打破软件开发的瓶颈。借助Mendix开发平台,企业可以打造具备智能、主动性和人机互动等原生体验的智能化应用,对核心系统进行现代化升级并实现规模化应用开发,以跟上业务增长的速度。Mendix低代码软件快速开发平台可在保持最高安全、质量和治理标准的前提下,促进业务与IT团队之间的密切合作,大大缩短应用开发周期,帮助企业自信迈向数字化未来。Mendix的“Go Make It”平台已被全球4000多家领先公司采用。