支付宝App无线网络性能该何如保障

2024-06-21 17:18

本文主要是介绍支付宝App无线网络性能该何如保障,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

App : 树

服务:树叶

无线网络: 树干


无线网络的挑战:

设备首先,高延时,低宽带,劫持,篡改,高丢包率


核心目标:稳定,可靠,快速


网络基础设计

统一网络库:连接管理及网络IO;协议处理;安全传输

接入网关:连接保持

服务网关


终端网络监控:

HTTPDNS

全网调度

多维度策略控制

独立通道,安全校验

请求优化,快速生效


超大流量应对:

网络过载保护

多级网关


网络协议

应用层: RPC SYNC PUSH

                 HTTP

表示层:SPDY MMTP

会话层:SSL/TLS MTLS

传输层:TCP


MMTP: 蚂蚁移动通信协议

协议基础:TLV,二进制,双工,多并发

协议特性:高扩展性

弱网络适应性:重发,补偿


当前SSL/TLS的弊端:

交互次数:


流量消耗:

4K+

SSL异常:

部分手机证书验证异常

计算消耗:


MTLS:

基于TLS-1.3的特性在TLS-1.2上扩展


网络优化实践

过程拆解,学会减法

域名收敛,减少不必要的连接

精简流程,减少网络交互次数

模式改进,消除无效传输


终端看网络,勤做“加法”

终端网络状态是变化的,那什么时候去建立连接


代码调优,快马加鞭

线程

定时器

IO操作

同步与一部

拆包、粘包

跨进程通信


业务治理

业务流程合并

业务优先级控制

模式选择

交互与网络解耦

    -- 打赏

异常提醒规范


电量&流量

电量:

- 自适应心跳

- 硬定时对齐

- 单次流量的唤醒持续时间优化


工具及平台

终端分析: 诊断sdk,APNC:终端抓包工具

网络模拟:仿真平台;ATC:网络模拟测试工具

电量测试:Monoon的PowerMonitor

无线探测:



网络基础指标

耗时、成功率

RPC服务成功率99%,PUSH三秒实时到达率90%

行业流行指标:

1秒法则

合格率90%

网络优化扩展指标:

耗时分布,长尾慢速比

连接保活时长


未来技术方向

IPV6

QUIC

厂商合作

网络pop节点加速






这篇关于支付宝App无线网络性能该何如保障的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1081836

相关文章

JVisualVM之Java性能监控与调优利器详解

《JVisualVM之Java性能监控与调优利器详解》本文将详细介绍JVisualVM的使用方法,并结合实际案例展示如何利用它进行性能调优,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全... 目录1. JVisualVM简介2. JVisualVM的安装与启动2.1 启动JVisualVM2

Java使用MethodHandle来替代反射,提高性能问题

《Java使用MethodHandle来替代反射,提高性能问题》:本文主要介绍Java使用MethodHandle来替代反射,提高性能问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录一、认识MethodHandle1、简介2、使用方式3、与反射的区别二、示例1、基本使用2、(重要)

PyTorch高级特性与性能优化方式

《PyTorch高级特性与性能优化方式》:本文主要介绍PyTorch高级特性与性能优化方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、自动化机制1.自动微分机制2.动态计算图二、性能优化1.内存管理2.GPU加速3.多GPU训练三、分布式训练1.分布式数据

Java的"伪泛型"变"真泛型"后对性能的影响

《Java的伪泛型变真泛型后对性能的影响》泛型擦除本质上就是擦除与泛型相关的一切信息,例如参数化类型、类型变量等,Javac还将在需要时进行类型检查及强制类型转换,甚至在必要时会合成桥方法,这篇文章主... 目录1、真假泛型2、性能影响泛型存在于Java源代码中,在编译为字节码文件之前都会进行泛型擦除(ty

Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案

《Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案》:本文主要介绍Vue3组件中getCurrentInstance()获取App实例,但是返回nu... 目录vue3组件中getCurrentInstajavascriptnce()获取App实例,但是返回n

如何解决idea的Module:‘:app‘platform‘android-32‘not found.问题

《如何解决idea的Module:‘:app‘platform‘android-32‘notfound.问题》:本文主要介绍如何解决idea的Module:‘:app‘platform‘andr... 目录idea的Module:‘:app‘pwww.chinasem.cnlatform‘android-32

Python如何使用__slots__实现节省内存和性能优化

《Python如何使用__slots__实现节省内存和性能优化》你有想过,一个小小的__slots__能让你的Python类内存消耗直接减半吗,没错,今天咱们要聊的就是这个让人眼前一亮的技巧,感兴趣的... 目录背景:内存吃得满满的类__slots__:你的内存管理小助手举个大概的例子:看看效果如何?1.

Redis中高并发读写性能的深度解析与优化

《Redis中高并发读写性能的深度解析与优化》Redis作为一款高性能的内存数据库,广泛应用于缓存、消息队列、实时统计等场景,本文将深入探讨Redis的读写并发能力,感兴趣的小伙伴可以了解下... 目录引言一、Redis 并发能力概述1.1 Redis 的读写性能1.2 影响 Redis 并发能力的因素二、

Android App安装列表获取方法(实践方案)

《AndroidApp安装列表获取方法(实践方案)》文章介绍了Android11及以上版本获取应用列表的方案调整,包括权限配置、白名单配置和action配置三种方式,并提供了相应的Java和Kotl... 目录前言实现方案         方案概述一、 androidManifest 三种配置方式

Golang中拼接字符串的6种方式性能对比

《Golang中拼接字符串的6种方式性能对比》golang的string类型是不可修改的,对于拼接字符串来说,本质上还是创建一个新的对象将数据放进去,主要有6种拼接方式,下面小编就来为大家详细讲讲吧... 目录拼接方式介绍性能对比测试代码测试结果源码分析golang的string类型是不可修改的,对于拼接字