科技网

当前位置: 首页 >VR

极光推送在技术进步的道路上永不止步

来源: 作者: 2019-03-13 18:39:31

极光推送:在技术进步的道路上永不止步

【科技讯】6月5日消息,作为国内领先的第三方云推送平台,极光推送始终坚持在技术进步的道路上永不止步。

在经历了三次大规模系统重构之后,极光推送基于 ICE 打造了高可用云推送平台,在扩容缩容、系统配置集中统一、自动负载均衡等方面实现了更加便利。

但极光推送并不因为有了 ICE 就止步不前。

极光推送认为仅仅ICE是不够的。

ICE是一个分布式的络中间件,提供了通信层的完全封装,能自动处理络异常,负载均衡,业务部署等基础性的工作,避免在这些地方重复发明轮子发明轮子作业,省时省力,让研发人员的工作变得更轻松。

实际上北非如此,ICE 是一个中间件,相比原来的开发,基础部分从头开始,重新发明轮子,省时省力,研发工作变得简单。但是,还是需要做一些调整工作,比如负载的调度策略、

极光推送在技术进步的道路上永不止步

,计划支持客户端语言选择,以及 ICE 对象的设计。推送系统是多种技术结合的综合体系,需要缓存、,需要数据库、,需要 MQ 等大量的其它技术配合。

下图是 ICE 的体系架构,这个 C/S 架构左边蓝色代码部分,是通过IDL生成的相应平台的接口,各平台下可以直接调用;右边是对应的接口骨架类,用来容纳具体的服务端业务逻辑这个 C/S 架构左边客户端代码蓝色部分,通过生成的结构转成相应平台的接口文件,这个骨架定义了一个方法,对应的服务端也有一个方法,在平台下可以直接调用。

ICE 本身提供的原生服务如 Ice Grid,它可以管理 Glacier2,极光内部服务节点很多都是在内,如果需要跨访问的时候要跨外,不可能把成千上万节点都给它,可以通过这样做一个流量的转发,就是防火墙穿越。

Ice Patch2 是一个自动化的部署,有点像交付,它提供专用的服务,把 Server 放在这样一个目录结构里面更新一下,重新计算数一下值,然后发通知,所有的节点会全部更新。在更新的过程中,节点可能会停一下或,重启一下。正在处理的请求处理完之后,再重新启动。请求不会在启动和停止之间丢失,因为 ICE 的客户端会把这个请求正常定位到其他正在运行的节点上,客户端的调用是没有感知的。

像 DBAgent、STC、TagAlias 等集群都用到了 ICE,在研发过程中,能节省了不少的精力,例如不需要从 Socket 做起,通过 IDL 简化协议设计,提高效率;扩容缩容方便;不用再专门处理容灾;不同语言之间的差异由框架代劳;系统配置集中统一;自动负载均衡,连接池管理等等。

极光推送始终不忘初心,在用户与负载日益增加的情况下,不断用新的技术保持高效稳定的服务,做国内最专业的开发者服务。

相关推荐