使用高速通道加速iOS版本审核

本文涉及的产品
云服务器 ECS,每月免费额度200元 3个月
云服务器ECS,u1 2核4GB 1个月
公网NAT网关,每月750个小时 15CU
简介: 原作者:阿里云解决方案架构师,云帅。此方案目的是为了加速苹果商店审核的网络通道和服务的稳定、低延迟、高可用,以保证APP满足审核条件下快速过审

1 市场现状


据Newzoo数据显示,2017年全球游戏市场规模预计达1089亿美元,较上年增长7.8%,移动游戏(包括平板和智能手机)方面,市场规模占整体游戏市场42%,占比最大,约457.38亿美元。预计2018年,全球手游市场规模将达到521亿美元,也将会是所有平台中,游戏规模增速最快、市场规模最大的游戏平台。
而在整个智能手机的普及率上,IOS的手机也占了将近半壁江山,同时它的CPI和相对更高,人群的付费意愿和能力相比Android也会略高。
a88defaf0b737c3ff24bfcad8cf936eb7ba16abf
但是一款手游要想发布在苹果商店的应用市场,最头痛的莫过于审核。最近,苹果在官网给出了截至2016年6月份应用被拒绝的十大条款(其中63%以上的应用被拒绝都是因为这10个条款),另外一个主要的原因就是跨境网络传输的不稳定、延迟高也是造成审核失败的重要原因,此方案目的是为了加速苹果商店审核的网络通道和服务的稳定、低延迟、高可用,以保证APP满足审核条件下快速过审。

2 需求和痛点


通信质量差

跨境的网络延迟较高,从上海到美东高峰延迟达到200~300ms;网络丢包率较高,而且不稳定,高峰期时刻的丢包率会达到50%,苹果审核经常由于网络问题失败。受到政策管控的影响,网络偶尔会发生终端,导致游戏服的包在苹果商店访问失败而审核失败。


本高

使用公网进行通信需要支付昂贵的公网流量费用或者带宽费用;使用专线保障稳定又需要支出更高的专线成本。海外资源相对匮乏,沟通和时间成本也是需要考虑。网络自建的维护成本较高,审核的需求不是经常有,带宽需求量很小。


不安全

通过公网传输存在被监听窃取的风险;游戏版本的迭代发行一旦版本泄漏,造成无法挽回的损失。审核服务很容易遭受到网络和业务上的攻击,同时如果服务器存在漏洞也容易被入侵和泄密。


组网复杂

游戏版本服务器如何提供给游戏研发进行高效运维管理和上传;游戏版本服务器如何与游戏服进行互通、交互、联网数据同步。游戏版本审核服务器如何快速迭代版本让审核业务更加高效、透明。


运维复杂度高

一般游戏审核服务器上会有不下100个游戏版本包的审核需求,如果每台服务器都提供一个IP,运维工作相当复杂;如何实现高速互联的网络复用,如何提高服务器、网路和海外Ip资源的高效自动化运维。如何再增加服务器和Ip资源的时候,达到快速满足业务需求,这些都是审核服需要面临的问题。

3 业务架构

8ffb4c9d1ed50c3f09362345164057ad912e36df

4 审核服配置

9a3b9e5f42bae8877eb16638f41c64da82c8c907
(注:图上红线隐去部分为公网IP)


5 网络架构

3487eed713829d240bf5d3030d5811627457781c


6 实施步骤

准备工作:账号有最多20个EIP限制,一个NATGW有最多绑定10个EIP限制。
单独起一个VPC规划好IP地址段,1个vswitch,也就是1个IP段。建议每台ECS的10个子接口IP段都是独立的,方便汇总。
第一步创建VPC购买云产品。上海VPC:高性能ECS   EIP。美西VPC:NatGW+共享带宽包+公网IP。
第二步 建立高速通道,添加路由建立高速通道:上海和美西的VPC之间建立高速通道。上海vroute 加默认路由0.0.0.0,0.0.0.0  下一跳路由接口到美西。美西vroute 加回ECS的路由:192.168.1.0/24   192.168.100.0/24  下一跳路由接口到上海。
上海vroute还需要添加子接口的路由:192.168.100.0/24  下一跳是ECS,目的是可以让子接口收到回包。
第三步 上海本地EIP绑定ECS主网卡eth0,美西NATGW做IP mapping的DNAT到ECS的子接口IP 见第4部分的对应关系建DNAT表就可以。
第四步 ECS上面
ifconfig eth0:1 192.168.100.1 netmask 255.255.255.255
Ifconfig eth0:2 192.168.100.2 netmask 255.255.255.255
第五步 在ECS上面带辅助网卡的子接口源IP地址去ping美西的任意IP,如果可以ping通,并且延迟是在预期内的,就可以了
ping 54.199.128.42 –I 192.168.100.1


7 带给客户的价值


安全

通信数据在阿里自建设施中传输,不经公网,不担心私密数据被窃取。
不同专有网络之间通过隧道ID进行隔离。专有网络内部由于交换机和路由器的存在,所以可以像传统网络环境一样划分子网,每一个子网内部的不同云服务器使用同一个交换机互联,不同子网间使用路由器互联。
由于使用隧道封装技术对云服务器的IP报文进行封装,所以云服务器的数据链路层(二层MAC地址)信息不会进入物理网络,实现了不同云服务器间二层网络隔离,因此也实现了不同专有网络间二层网络隔离。
专有网络内的ECS使用安全组防火墙进行三层网络访问控制。


可靠稳定

连续三分钟丢包率高于2%或连续5秒网络中断定义为网络不可用,总计网络可用时间除以当月总时间,为网络可用率。网络可用性大于99.5%。
双接入点的网络可用性大于99.95%,双接入点指客户使用两条线路接入阿里云的两个不同接入点。
VPC互联的网络可用性99.95%。
NAT网关跨可用区部署,可用性高。单个可用区的任何故障都不会影响NAT网关的业务连续性。
容灾集群的NAT网关和公网IP,打造极致稳定的公网网关服务。


高速互通

依托阿里巴巴集团优质基础设施实现,冗余线路保障通信稳定可靠。
跨境专线链路的质量提供给苹果商店审核,提高审核成功率。
NAT网关提供SNAT和DNAT功能。无需用户基于云服务器自己搭建,功能灵活、简单易用、稳定可靠。
基于阿里云自研分布式网关,使用SDN技术虚拟化推出的一款虚拟网络硬件。NAT网关支持10Gbps级别的转发能力,为大规模公网应用提供支撑。


灵活扩展

使用过程立即开通,跨境互通,高效便利。
开通后随时扩展,按需购买,带宽资源充足,满足客户后续弹性的需求。
高速通道的产品简明易用,几个简单的操作就能取代物理世界中复杂的网络配置。同时,您可以完全掌控您的高速通道的通信带宽、工作状态和两侧网络的路由配置,所见即所得。
NAT网关单实例提供万兆级吞吐量,百万级连接数,满足超大业务上云需求。


成本可控

规格配置丰富,不同规格提供不同的数据传输速度。您可以根据您的业务需求按需购买,成本可控。
NAT网关的规格、带宽和公网IP,均可以随时升降,轻松应对业务变化。
支持共享带宽,多台VPC ECS共享公网带宽,大幅降低公网带宽成本。

目录
相关文章
|
1月前
|
API 数据安全/隐私保护 iOS开发
利用uni-app 开发的iOS app 发布到App Store全流程
利用uni-app 开发的iOS app 发布到App Store全流程
85 3
|
3月前
|
存储 iOS开发
iOS 开发,如何进行应用的本地化(Localization)?
iOS 开发,如何进行应用的本地化(Localization)?
122 2
|
3月前
|
存储 数据建模 数据库
IOS开发数据存储:什么是 UserDefaults?有哪些替代方案?
IOS开发数据存储:什么是 UserDefaults?有哪些替代方案?
39 0
|
3月前
|
安全 编译器 Swift
IOS开发基础知识: 对比 Swift 和 Objective-C 的优缺点。
IOS开发基础知识: 对比 Swift 和 Objective-C 的优缺点。
91 2
|
3月前
|
API 开发工具 iOS开发
iOS 开发高效率工具包:10 大必备工具
iOS 开发高效率工具包:10 大必备工具
47 1
|
3月前
|
API 数据安全/隐私保护 iOS开发
利用uni-app 开发的iOS app 发布到App Store全流程
利用uni-app 开发的iOS app 发布到App Store全流程
54 1
|
6天前
|
API 定位技术 iOS开发
IOS开发基础知识:什么是 Cocoa Touch?它在 iOS 开发中的作用是什么?
【4月更文挑战第18天】**Cocoa Touch** 是iOS和Mac OS X应用的核心框架,包含面向对象库、运行时系统和触摸优化工具。它提供Mac验证的开发模式,强调触控接口和性能,涵盖3D图形、音频、网络及设备访问API,如相机和GPS。是构建高效iOS应用的基础,对开发者至关重要。
11 0
|
21天前
|
开发工具 Swift iOS开发
利用SwiftUI构建动态用户界面:iOS开发新范式
【4月更文挑战第3天】 随着苹果不断推进其软件开发工具的边界,SwiftUI作为一种新兴的编程框架,已经逐渐成为iOS开发者的新宠。不同于传统的UIKit,SwiftUI通过声明式语法和强大的功能组合,为创建动态且响应式的用户界面提供了一种更加简洁高效的方式。本文将深入探讨如何利用SwiftUI技术构建具有高度自定义能力和响应性的用户界面,并展示其在现代iOS应用开发中的优势和潜力。
|
2月前
|
监控 API Swift
用Swift开发iOS平台上的上网行为管理监控软件
在当今数字化时代,随着智能手机的普及,人们对于网络的依赖日益增加。然而,对于一些特定场景,如家庭、学校或者企业,对于iOS设备上的网络行为进行管理和监控显得尤为重要。为了满足这一需求,我们可以利用Swift语言开发一款iOS平台上的上网行为管理监控软件。
196 2
|
3月前
|
数据可视化 iOS开发
iOS 开发,什么是 Interface Builder(IB)?如何使用 IB 构建用户界面?
iOS 开发,什么是 Interface Builder(IB)?如何使用 IB 构建用户界面?
40 4