58同城高性能移动Push推送平台架构演进之路
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 本文详细讲述58同城高性能移动Push推送平台架构演进的三个阶段,并介绍了什么是移动Push推送,为什么需要,原理和方案对比;移动Push推送第一阶段(单平台)架构如何设计;移动Push推送典型性能问题分析解决,以及高可用、高性能、高稳定性如何保证。 什么是移动Push推送 移动Push推送是移动互联网最基础的需求之一,用于满足移动互联环境下消息到达App客户端。以转转(58赶集旗下真实个人的闲置交易平台)为例,当买家下单后,我们通过移动Push推送消息告诉卖家,当卖家已经发货时,我们通过移动Push消息告诉买家,让买卖双方及时掌握二手商品交易的实时订单动态。 为什么需要移动Push推送? 移动互联网络环境下,经常会出现弱网环境,特别是2G、3G等网络环境下,网络不够稳定,App客户端和相应服务器端的长连接已经断开,消息无法触达App客户端。而我们业务需要把Message(转转App交易消息等)、Operation(转转App运营活动等)、Alert(转转红包未消费提醒等)等消息推送给App客户端,从而触发用户看到这些消息,通过点击这些Push消息达到相应目标。 推送原理和方案对比 移动Push推送主要有以下三种实现方式。 移动App轮询方式(PULL) App客户端定期发起Push消息查询请求