mPaas-MGS服务端架构介绍

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
mPaaS订阅基础套餐,标准版 3个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 移动网关服务(Mobile Gateway Service,MGS)是移动开发平台(mPaaS)提供的连接移动客户端与服务端的组件产品。该组件简化了移动端与服务端的数据协议和通讯协议,能够显著提升开发效率和网络通讯效率。

一 功能描述

1.简介

移动网关服务(Mobile Gateway Service,MGS)是移动开发平台(mPaaS)提供的连接移动客户端与服务端的组件产品。该组件简化了移动端与服务端的数据协议和通讯协议,能够显著提升开发效率和网络通讯效率。

2.功能特点

移动网关是连接移动客户端跟服务端的桥梁,移动客户端通过网关来访问后台服务接口。移动网关能够:

  • 自动生成客户端的 RPC 调用代码,用户不需要关心网络通信、协议以及使用的数据格式。
  • 将服务端返回的数据自动反解生成 Objective-C 对象,无需额外编码。
  • 提供数据压缩、缓存、批量调用等增强服务。
  • 统一进行异常处理,如弹出对话框、Toast 提示框等。
  • 支持 RPC 拦截器,实现定制化的请求与处理。
  • 实行统一的安全加密机制和防篡改的请求签名验证机制。
  • 限流管控,保护后台服务器。

3.价值优势

移动网关服务的优势在于:

  • 简单配置即可适配多种终端,连接异构的后端服务。
  • 自动生成移动端 SDK,实现前后端分离,提升开发效率。
  • 支持服务注册、发现与管控,实现服务聚合与集成,降低管理成本和安全风险。
  • 提供优化后的数据协议与通讯协议,提高网络通讯质量和效率。

二 产品架构

1.MGS架构

1.1.业务流量

参考上图黄色的实线,首先APP的请求会经过一个负载均衡设备,这个负载均衡设备可能是一个F5,或者ALB、SLB等软负载产品,经过负载均衡之后会把请求转发到mpaasgw的应用,mpaasgw再根据这个API配置的后端协议类型,通过对应的协议转发到对应的后端的业务服务器。

1.2.服务发现

参考上图蓝色虚线,mpaasgw和后端的业务服务器根据环境部署的不同注册中心,选择使用不同的协议来做服务发现,例如当前环境使用SOFA-Registry作为注册中心,那么对应的请求协议为TR;如果当前环境使用的是zookeeper作为服务注册中心,那么请求的协议就是dubbo类型。

1.3.管控流量

参考上图灰色的实线,mAppCenter就是我们平时客户端同学经常使用的mPaaS控制台,我们在mAppCenter页面配置接口,后相关的接口信息经过nginx进程路由到mpaasgw。可以看到mpaasgw自身也依赖一些其他组件,包括数据库、监控和动态配置,其中:数据库主要是负责存储网关的各类配置数据例如API分组的信息等,在阿里云底座下使用的是RDS,在AntStack底座下使用的是OceanBase;监控主要是针对网关的一些日志打印来实现一些API请求的在线监控,错误数监控,耗时情况等等;动态配置这块主要是用于动态的调整一些运行时配置,例如日志的打印级别等等,根据实际是否启用中间件可以分别选用SOFA-DRM或者Zookeeper。

2.MGS网络架构 – AntStack底座

2.1.名词解释

  • DMZ区:因为银行内部一般都不可以直接链接外网,故在银行的内网前面,会有一个叫做DMZ区的地方,这个地方可以访问外网。
  • 行方应用区:银行内网环境,无法直接访问外网。

2.2.业务流量

参考上图蓝色实线,APP的请求经过DNS域名解析,转发到银行的DMZ区,进行证书的卸载,使得阿里云部署的spanner可以直接拿到HTTP的请求信息,后经过mPaaS应用区,请求信息会根据实际情况进行处理,如是银行自己的业务请求,则转发到行方应用区,如是mPaaS的框架请求,则转发给mPaaS的内部组件进行处理。

2.3.管控流量

参考上图mPaaS的应用区里面的灰色实线,由于应用都是部署在内网,所以管控流量的请求走HTTP也就够了,当我们访问mAppCenter的时候,走的是80端口,这个端口是写死的,不支持指定别的端口。还有一点需要知晓的是请求从mAppCenter到mpaasgw的时候,存在端口80转8081的情况。


3.MGS网络架构 – 阿里云底座


3.1.名词解释

  • 中枢VPC:简单的理解为阿里云的一个VPC集群就好。

3.2.业务流量

参考上图蓝色实线,APP的请求经过DNS域名解析,走到阿里云的外网SLB,后到mpaasgw,应用自行甄别请求是否是框架请求,如是则走DUBBP/TR协议转发到内部组件,如不是则转发至后端的业务服务器,用户自行处理。这里值得关注的是:由于mPaaS部署在阿里云的VPC下面,无法直接访问银行的后端业务,所以从中枢VPC到银行后端业务这一段一般是走高速通道,来打通访问。

目录
相关文章
|
6月前
|
微服务
01.【微服务架构】服务注册与发现:AP和CP,你选哪个?-- 服务端崩溃检测
【5月更文挑战第3天】保证服务注册与发现的高可用需关注三个方面:服务端崩溃检测、客户端容错和注册中心选型。服务端崩溃时,注册中心通过心跳检测来识别,若心跳中断,立即通知客户端服务不可用,同时持续尝试恢复心跳。若一段时间后仍无法连接,则断定服务端彻底崩溃。这种方法兼顾及时故障通知和防止误判。
93 8
|
存储 jstorm 消息中间件
mPaas-MAS服务端架构介绍
移动分析服务(Mobile Analysis Service,简称 MAS)是 mPaaS 平台的一个核心基础服务组件,是一项方便您轻松地大 规模收集、可视化并理解应用程序使用数据的服务。MAS 通过统计和分析客户端流量、性能质量和用户行为等数据,用数 据实现产品、运营、推广的决策;通过对闪退的分析,快速定位闪退原因,提高程序稳定性。
1227 0
mPaas-MAS服务端架构介绍
|
存储 移动开发 负载均衡
mPaas-MPS服务端架构介绍
消息推送服务(Message Push Service,简称 MPS)是移动开发平台 mPaaS 提供的专业的移动消息推送方案,针对不 同的场景推出多种推送类型,满足您的个性化推送需求。为了提升推送的到达率,mPaaS 在 MPS 中集成了华为、小米等 厂商的推送功能,在提供控制台快速推送能力的同时,也提供了服务端接入方案,方便用户快速集成移动终端推送功能 ,与 App 用户保持互动,从而有效地提高用户留存率,提升用户体验。
1022 0
mPaas-MPS服务端架构介绍
|
缓存 安全 网络协议
mPaas-MSS服务端架构介绍
数据同步是 mPaaS 平台的一个核心基础服务组件。数据同步源自蚂蚁集团内面向移动应用、从服务端到客户端进行海量数据推送的全链路解决方案 — SYNC。该组件提供了一个安全的基于传输控制协议(Transmission Control Protocol,简称 TCP)和安全套接层(Secure Sockets Layer,简称 SSL)的数据通道,能够及时、准确、有序地将服务器端的业务数据主动地同步(SYNC)到客户端 App。
1835 0
 mPaas-MSS服务端架构介绍
|
存储 移动开发 缓存
mPaas-MDS服务端架构介绍
实时发布服务(Mobile Delivery Service,简称 MDS)是 mPaaS 平台的核心基础服务组件之一,提供版本升级包、热修复包、H5 离线包的管理和发布服务,同时支持 开关配置、白名单、发布规则 管理功能。
1197 0
mPaas-MDS服务端架构介绍
|
Java API 开发工具
蚂蚁金服 mPaaS 服务端核心组件体系概述:移动 API 网关 MGS
根据《开篇 | mPaaS 服务端核心组件体系概述》,我们已经初步了解 mPaaS 平台后端各组件的核心架构体系。 而在 mPaaS 服务端众多组件中,移动 API 网关 MGS 是连接移动客户端与服务端的组件产品。
5132 0
|
网络协议 Java 开发工具
mPaaS 服务端核心组件:移动同步服务 MSS 架构解析
移动同步服务 MSS 是移动开发平台 mPaaS 的核心基础服务组件之一,源自于蚂蚁金服集团内面向移动应用从服务端到客户端进行海量数据推送的全链路解决方案。
2910 0
|
算法 网络协议 Java
蚂蚁金服 mPaaS 服务端核心组件:亿级并发下的移动端到端网络接入架构解析
本文结合贾岛分享内容《亿级并发下的蚂蚁移动端到端网络接入架构》,着重探讨网络接入架构在蚂蚁金服体系内如何演进、如何应对“新春红包”等亿级并发挑战、以及相应的技术架构实践与优化思路如何在 mPaaS 中得到沉淀。
3005 0
|
监控 大数据 数据库
开篇 | 蚂蚁金服 mPaaS 服务端核心组件体系概述
经过《mPaaS 客户端架构解析》系列,我们已经对 mPaaS 的产品矩阵与具体定位有了初步认识。由本章节开始,我们将针对 mPaaS 服务端核心组件体系展开梳理和讨论,带领大家进一步认识了解 mPaaS 在服务端组件体系搭建过程中踩过的坑与相应的实践经验。
3656 0
下一篇
无影云桌面