关于消息推送:一封传话一对多推送实现步骤

前言后面介绍了一封传话聚合推送API的在线测试推送的步骤,能够实现一对一发送音讯。 然而咱们心愿实现:1. 群组订阅性能:例如我和我的好友一起退出通道后,只推送一次咱们两个人都能收到音讯。2. 多端揭示性能:例如我心愿同时推送到微信和钉钉,如果还能推送到飞书更好了。 一封传话这些性能全都反对,然而须要你到顶部导航栏 —— 通道治理 —— 推送通道页面去创立新的通道,这样就能给通道生成二维码,好友扫码当前就能退出通道。 首先你得有一个账号 无需注册,微信扫码登录后会跳转到推送通道治理页面,这时候点击“新增推送通道”按钮去创立一个微信推送通道,输出通道名称后点击保留。 下图是方才创立好的通道基本功能,间接点“详情”按钮跳转到通道详情页面。 通道码和测试性能都在下一个页面,咱们点击“详情”按钮跳转到详情页面。 一对多人推送原理实现原理:【一封传话】通过生成微信公众号场景二维码,能智能辨认关注过通道码的用户openid,当你向通道推送音讯的时候,一封传话会将音讯分发给关注过通道的用户。 而且,一封传话反对创立多个通道,随时启用/禁用通道实现开关性能。 上方有测试链接,右侧区域就是这个通道码了,邀请好友扫码关注。 好友扫码当前,他会主动呈现在左侧区域,通道创建人还能够移除他。 “点这里在线测试”跳转到测试页面,而后点击“发送测试”按钮。 此时,你和你的好友微信上应该收到了同一条推送内容。 点击“查看详情”,推送内容反对Markdown语法和根本的html语法渲染。 这就是一对多人推送的根本测试步骤,非常适合做网站布告订阅,如果有新的布告,扫码关注用户都能收到布告推送。如果有人订阅后心愿退订,能够间接在预览页面点击“勾销订阅”后不会再收到布告推送了。 扫码图片采纳的是活码: https://www.phprm.com/services/qr/c/1676044887/95v0yd5xowld复制永恒链接通过src间接援用图片(二维码每10天会主动刷新,无需截图保留)。通过API推送形式请参考:一行代码实现微信音讯推送 一对多端推送原理所谓一次推送多端揭示的意思就是说,一行API代码的申请,能够让微信、钉钉、飞书、邮箱同时收到音讯,这样简洁的API谁能不爱呢。 实现原理:【一封传话】反对创立“组合通道“类型的父通道,而后将具体的推送通道(微信推送、钉钉推送、飞书推送、邮件推送)的父通道批改为”组合通道“,进而实现一次推送,多端接管。 首先你得创立一个组合通道,输出名称后下拉框抉择组合通道 而后批改以前创立的微信通道将父通道指向组合通道后保留,同理将飞书推送通道的父通道也指向组合通道后关上组合通道详情页面。 关上组合通道的详情页面,你会发现子通道列表上面展现了组合通道下的具体推送通道。 目前组合通道下绑定的子通道个数没有下限(你能够绑定多个飞书群机器人或者多个钉钉群机器人哦)。 如果将来的某一天,咱们心愿可能不改任何代码的状况下也推送到钉钉,那就创立一个钉钉推送通道吧,而后将其父通道指向组合通道。 组合通道下当初有3个子通道,咱们进入到测试页面发送一条测试音讯: 这样就曾经实现了一次推送,多端揭示的需要了。最重要的一点就是,集成API到程序中时,记得用父通道码哦,同样通过API推送形式没有任何区别。一行代码实现微信音讯推送 到顶部导航栏——推送日志查问历史音讯推送记录 Tips:这里的理论推送工夫比触发工夫略晚,因为推送量很大,服务器每天会排队解决推送申请稍有提早(异步解决,咱们也在优化升高提早哦)。 另外,咱们能够拿着音讯ID到 一封传话聚合推送API文档 的发送后果查问区域查问推送和阅读数。 这就是一对多端的根本测试步骤,对于代码谨严要求的人,倡议应用组合通道将真正的推送通道给包装起来,后续降级保护都不须要改代码了。 Tips:挪动端默认全局启用组合通道(上图中只需同时勾选微信公众号、钉钉群机器人、飞书群机器人即可),没有任何多余操作,快来体验吧! 点击拜访挪动端官网:https://www.phprm.com/push/h5/ 参考: https://segmentfault.com/a/1190000043417419 http://push.phprm.com/doc/#/p/send https://segmentfault.com/a/1190000043417394 一封传话官网

February 14, 2023 · 1 min · jiezi

关于消息推送:一封传话聚合推送各语言demo代码示例

一封传话聚合推送各语言demo代码示例 前言查看一封传话的API文档的GET申请只需一行代码,在url上拼接head和body参数即可实现推送。这里针对body数据量较大的状况,给出各语言实现的demo代码。 Tips:以下代码中的trigger与API文档中的send等价,trigger在send根底上做了高级个性加强解决,能够参考:一封传话聚合推送高级个性API任何使用者都能够随便抉择调用任何一个API,在API的应用形式上没有差别。 PHP语言<?php// 通道码/口令码$channel_code = "4d2dac865118761a14d10d7d3afe7c35";$head = "测试题目";$body = "测试内容";$postdata = json_encode( array( 'head' => $head, 'body' => $body ) );$opts = array('http' => array( 'method' => 'POST', 'header' => 'Content-type: application/json', 'content' => $postdata ) );$context = stream_context_create($opts);$api_url = 'https://www.phprm.com/services/push/trigger/'.$channel_code;$result = file_get_contents($api_url, false, $context);echo $result;如果你更偏向于应用curl库, 齐全能够本人实现或者参考以下开源的三方库里的curl代码。 一些开源的三方库如果心愿应用业余推送库, 能够参考此开源我的项目, 【一封传话】聚合推送SDK曾经提交到Github和Gitee,通过composer能够间接装置SDK: Github: https://github.com/guanguans/notifyGitee: https://gitee.com/guanguans/notify提供博客零碎新注册用户、新评论揭示插件, 能够参考插件源码或者间接在本人的网站应用: WordPress插件: https://github.com/teakong/wordpress-tixing 或者 https://gitee.com/teakong/wordpress-tixingTypecho插件: https://gitee.com/teakong/wordpress-tixing 或者 https://gitee.com/teakong/TypechoTixing其余博客或网站插件: https://github.com/teakong/liuyan-weixin 或者 https://gitee.com/teakong/liuyan-weixinJAVA语言倡议应用Guava自带限流工具类, 例如10秒告警一次避免大量申请耗费你本人的服务器,如果应用redis分布式限流更好,这里还用到了Hutool工具包下的http申请类。 Hutool官网阐明文档: https://hutool.cn/docs/#/ 最新maven如下 ...

February 13, 2023 · 2 min · jiezi

关于消息推送:一封传话聚合推送高级特性API

一封传话聚合推送高级个性API 前言上一次介绍了一封传话的API文档的次要推送API,次要用于实现疾速推送到微信、企业微信、钉钉、飞书、邮箱、自定义Webhook。集成该API后仅需1个必传参数,即可实现一次推送多端接管和一次推送多人接管性能。 在电脑端,咱们依照官网的创立、测试流程调用的API是send接口,可能满足绝大多数用户的需要。 在挪动端提供了更丰盛的配置界面,例如预设参数、执行周期抉择、音讯通道缺省配置主动填充,加强原有API接口后能够实现更加弱小的trigger接口,能够满足局部用户的高级需要。 上面是tigger的接口文档和send接口文档比拟后发现入参和出参简直没有区别,这里介绍次要trigger接口绝对于send接口加强后的高级个性: 发送揭示接口申请地址:https://www.phprm.com/service...申请URL上的xxxxxxxxxxxxxxxx, 是您创立揭示的口令码申请形式:GET倡议对参数进行urlencode编码, POST形式申请头,Content-Type: application/json参数名称是否必填默认值阐明head否挪动端可预设音讯题目, 长度200以内body否挪动端可预设音讯内容, 长度50000以内, 反对markdown格局, 请参考markdown语法delayMilliseconds否0提早推送毫秒数, 不倡议传递, 如需传递最大不超过45天url否挪动端可预设不填将应用官网网址进行预览, 填写后将跳转到自定义网址, 例如: https://weibo.comGET申请形式样例: https://www.phprm.com/services/push/trigger/xxxxxxxxxxxxxxxx?head=默认题目&body=默认内容音讯推送接口响应内容样例: { "code": 0, "message": "申请胜利", "data": { "messageIdList": [ "1195026147680247809" ] }}trigger具备send所有个性,减少了前置预处理和后置解决。思考到trigger接口执行步骤多会耗费更多的性能,而且会略微减少API调用耗时。您能够参考是否应用以下高级个性,再决定应用send接口还是trigger接口。 高级个性预置题目head、预置注释body,无需传递任何参数即可实现推送;预置题目head、预置注释body反对{{变量}}实现参数映射, 预设{{title}}和{{content}}当前trigger API将通过?title=题目&content=注释调用形式;预置题目head和预置注释body的变量属性层级反对10层以内参数映射,例如网页更新揭示的{{data.title}}和{{data.text}}属于第2层;新增触发形式:口令触发(send接口也反对)、定时触发(quartz表达式或者按年月日循环执行);新增触发一次个性, 容许执行一次推送后主动暂停揭示状态;能够这么了解,send接口是一个高性能音讯推送接口,trigger做一层包装后性能更弱小。 特地是通过预置{{参数}}映射其余开源软件参数, 如果您的路由器或者某些软件的webhook参数无奈批改,能够试试trigger。实践上绝大多数的软件的webhook都能适配,目前已适配Granfna告警、网页更新揭示、Server酱、Gitee、Github,欢送到挪动端体验。 如果您没有用到以上高级个性能够间接应用send接口,这样http申请提早会更小一些。 参考: 一行代码实现微信音讯推送 一封传话推送工具API文档 http://push.phprm.com/api.html

February 13, 2023 · 1 min · jiezi

关于消息推送:个推支持海外消息推送助力APP扬帆出海

在全球化的浪潮之下,越来越多的国内开发者抉择“乘风出海”。音讯推送作为APP连贯用户的有效途径,成为开发者进军海内市场的刚需。但因为海内外网络环境、利用生态等的差别,APP在海内推送的过程中,也面临着音讯通道建设、海内用户精密经营、数据安全合规等方面的诸多挑战。为此,个推推出海内音讯推送解决方案,帮忙APP高效整合海内音讯通道,构建智能、精密、高效的用户触达体系,促成APP海内业务快速增长。  多链路触达体系,晋升用户触达用户触达通道,是APP与用户高效沟通的“桥梁”。但在APP构建海内音讯通道的过程中,也存在着不少“隐痛”:一方面,自建通道或逐个对接各厂商海内通道,不仅费时费力且老本居高不下;另一方面,面对寰球简单的网络环境,若APP只采纳FCM或APNs的零碎通道,又会遇到音讯送达率的瓶颈。 个推为APP构建了海内多链路触达体系,助其突破用户触达的壁垒。基于APP海内推送需要,个推不仅提供自有在线渠道,无缝对接FCM、APNs零碎通道,还高效整合了小米、华为、光荣、魅族、 OPPO等厂商推送能力。APP只需一次集成即可接入多厂商海内推送服务,实现在线、离线推送,保障音讯稳固、高效送达。 同时,个推还反对国内短信推送,帮忙APP进一步拓宽海内用户触达渠道,全面晋升音讯达到率。 依靠海内多链路触达体系,APP不仅能够自选音讯下发通道触达海内用户,还能通过音讯并发、散发、补发等形式,进步音讯达到率。此外,个推还提供离线音讯库、超长音讯主动截短、厂商推送余量查问治理等能力,反对各阶段、各渠道推送数据后效剖析,帮忙APP科学管理渠道资源,以更低的老本实现用户触达效率的全面降级。  多样化推送策略,晋升用户转化音讯点击率与经营转化成果密不可分。基于海内推送场景,个推反对丰盛的音讯展现款式以及亮屏推送、A/B Test、音讯分组、定时推送等音讯经营工具,帮忙APP精细化触达海内指标人群,进步音讯点击转化率,晋升用户沉闷与留存。 保障数据合规,护航APP“扬帆出海数据安全是寰球关注的焦点,也是APP出海的“必修课”。为全方位护航APP扬帆出海,个推构建了全球化的云服务集群,实现寰球服务器多节点部署,保障海内推送的稳定性。 此外,个推还提供分层权限治理、鉴权体系、日志监控、敏感内容审核过滤等多重爱护机制,帮忙APP升高经营危险,全方位保障数据安全、系统安全和内容平安。 深耕挪动开发畛域十余年,个推通过平安、稳固、牢靠的产品及服务博得了寰球开发者的信赖。大航海时代,个推还将继续翻新产品和技术服务,帮忙更多开发者晋升增长效率、开辟海内市场幅员。 

August 18, 2022 · 1 min · jiezi

关于消息推送:vivo手机上的系统级消息推送平台的架构设计实践

1、引言本文内容来自vivo互联网服务器团队李青鑫在“2021 vivo开发者大会”现场的演讲内容整顿而成(现场演讲稿可从本文末附件中下载)。本文将要分享的是手机厂商vivo的零碎级推送平台在架构设计上的技术实际和总结。这也是目前为止首次由手机厂商分享的自建零碎级推送平台的技术细节,咱们也得以借此机会一窥厂商ROOM级推送通道的技术水准。 学习交换: 挪动端IM开发入门文章:《新手入门一篇就够:从零开发挪动端IM》开源IM框架源码:https://github.com/JackJiang2...(备用地址点此)(本文已同步公布于:http://www.52im.net/thread-40...) 2、对于作者李青鑫,vivo互联网服务器团队架构师。 3、为什么须要音讯推送音讯推送对于挪动端APP来说,是很常见的业务特色,比方新闻APP中的最新资讯、社交利用中的零碎告诉、IM即时通讯利用的离线聊天音讯等等。能够说,没有音讯推送能力,APP就失去了实时触达的能力,对于一个利用来说,它对用户的“粘性”将大大降落。而对于用户来说,信息实时获取的能力也将大大降低,用户体验也将大幅降落。 4、音讯推送的技术阻碍以咱们日常最常见的IM利用来说,离线音讯的推送是必备能力。但随着Android零碎的一直降级,离线推送曾经不单单是一个后盾服务加长连贯那么天经地义了。 对于晚期的Android零碎来说,想要实现IM的离线音讯推送并不艰难,搞个后盾服务再加上socket长连贯就算是齐活了。但随着Android零碎的降级,针对后盾过程和网络服务限度一直加码,为了持续实现离线音讯的推送,开发者们不得不跟零碎斗志斗勇,搞出了各种保活黑科技,比方:Android4.0之后的双过程守护、Android6.0及之后的防杀复活术、以及倒退到起初的腾讯TIM过程永生技术,一时间群魔乱舞、无比风骚(有趣味的同学,能够读读《Android过程永生技术终极揭秘:过程被杀底层原理、APP应答被杀技巧》这篇针对所有保活黑科技的总结性文章)。 随着Andriod 9.0的到来,根本从零碎上堵死了各种保活黑科技的生路(详见《Android P正式版行将到来:后盾利用保活、音讯推送的真正噩梦》),各Android厂商的ROOM零碎级推送通道也应运而生——华为推送、小米推送、魅族推送、OPPO推送、vivo推送,一时间从用户的噩梦(保活黑科技对用户困扰很大)变成了开发者的恶梦并继续至今(想要做好IM离线推送,现在的IM开发者们不得不一家家对接各手机厂商的离线推送,你说烦不烦)。 也别跟我说为什么不必Android官网的FCM服务(在国内这链接你能关上算我输,至于为什么,你懂的。。。),也别我跟提那个对立推送联盟(4、5年过来了,看样子还要持续等上来)。 于是,为了持续搞定离线音讯推送,IM的开发者们目前只有两条路可选: 1)举白旗向零碎投降,放弃保活黑科技,间接疏导用户手动加白名单(详见《Android保活从入门到放弃:乖乖疏导用户加白名单吧》);2)一家一家对接各厂商的零碎级推送通道(华为、小米、魅族、OPPO、vivo,喜剧的是,有些小众厂商并没自建推送的能力)。 随着Android零碎对于开发者保活黑科技的“堵”,手机厂商们搞出自家的零碎级推送通道来“疏”,也算是天经地义。而这些厂商之中,vivo的零碎级推送通道呈现的算是比拟晚的。本篇文章的余下技术内容,算是目前为止首次由手机厂商分享的自建零碎级推送平台的技术细节,咱们一起来学习。 5、从技术角度理解推送平台推送平台是做什么的?从技术的角度上来看,推送平台就是一个通过TCP长连贯,将音讯发送给用户的平台。所以推送平台的实质其实就是借助网络通道,将音讯发送到用户设施上。 大家日常都收到过快递告诉吧!当快递员将快递放到快递柜中,快递后盾就会主动推送一条音讯,告诉你有快递。我置信,如果你是一位经营人员,你也会喜爱这种主动下发音讯高效的形式。大家感兴趣的,能够通过vivo开放平台入口,抉择音讯推送来更进一步理解更多技术细节,这里就不做开展了。 6、短连贯与长连贯音讯推送平台的实质,就是通过长连贯将内容、服务、用户连在一起,将内容分发给用户,为终端设备提供实时、双向通信能力。这里有个概念长连贯,那么什么是长连贯?所谓的长连贯就是:客户端与服务端维持的一条、在绝对较长的工夫里、都可能进行网络通信的网络连接(比方:基于TCP的长连贯)。 为什么咱们要采纳长连贯而不是短连贯作为平台底层的网络通信?先来看看短连贯下音讯下发的场景:应用短连贯的形式就是轮询,即客户端定时的去询问后盾有没有设施A的音讯,当有设施A的音讯时后盾返回对应的音讯,可能很多状况下都是无功而返,节约流量。当后盾有音讯须要发送给设施A时,因为设施A没有过去取导致音讯无奈下发。 而应用长连贯:当有设施A的音讯时后盾间接发送给设施A而不必等设施A本人过拉取,所以长连贯让数据交互更加天然、高效。 7、业务需要驱动架构降级对于零碎的技术架构来说,它是动静的,不同阶段都可能会发生变化。而推动架构进行演进的推力,次要来自于业务需要,一起来回顾,平台的业务倒退历程。 自2015年立项以来,随着业务量增长,一直为零碎增加性能个性,丰盛整个零碎的能力使其满足不同的业务场景需要。比方反对内容齐全审核、反对IM、反对IoT、反对WebSocket 通信等。从图上能够看到,业务量简直每年都有几十亿的增长,一直攀高,给零碎带来了挑战,原有的零碎架构存在的问题,也逐步浮出水面,比方提早、性能瓶颈。架构服务于业务,2018年之前咱们平台所有服务都放在云上,然而依赖的其余外部业务部署在自建机房。 随着业务量增长与自建机房的数据传输,曾经呈现了提早的问题,并且在逐步好转,不利于咱们平台性能的拓展。所以在2018年下半年,咱们对部署架构进行调整:将所有外围逻辑模块都迁徙到自建机房,架构优化之后,数据提早问题失去彻底解决,同时也为架构进一步演进奠定了根底。从下面的图中能够看到咱们接入网关也进行优化三地部署。 为什么要进行三地部署而不是更多区域部署呢?次要基于以下三点思考:1)第一是基于用户散布及老本的思考;2)第二是能为用户提供就近接入;3)第三是可能让接入网关具备肯定容灾能力。 大家能够构想下,如果没有三地部署,接入网关机房故障时,那么平台就瘫痪了。随着平台业务规模的进一步扩充,日吞吐量达到10亿的量级,用户对于时效性、并发要求越来越高。而2018年的逻辑服务的零碎架构曾经无奈业务高并发的需要或者须要更高的服务器老本能力满足高并发需要。所以从平台性能、老本优化登程,在2019年对系统进行了重构,为用户提供更加丰盛的产品性能及更稳固、更高性能的平台。 8、利用长连贯能力给更多业务赋能 作为公司较大规模的长连贯服务平台,团队积攒了十分丰盛的长连贯教训。咱们也始终在思考,如何让长连贯能力为更多业务赋能。咱们平台服务端各个模块之间通过RPC调用,这是一种十分高效的开发模式,不必每个开发人员都去关怀底层网络层数据包的。 咱们构想一下,如果客户端也能通过RPC调用后盾,这肯定是十分棒的开发体验。将来咱们将会提供VRPC通信框架,用于解决客户端与后盾通信及开发效率问题,为客户端与后盾提供统一的开发体验,让更多的开发人员不再关怀网络通信问题,分心开发业务逻辑。作为一个吞吐量超过百亿的推送平台其稳定性、高性能、平安都十分重要,接下来和大家分享,咱们在零碎稳定性、高性能、平安方面的实践经验。 9、vivo推送平台的畛域模型从上图的畛域模型能够看出,推送平台以通信服务作为外围能力,在外围能力的根底上咱们又提供了,大数据服务以及经营零碎,通过不同接口对外提供不同的性能、服务。以通信服务为外围的推送平台,其稳定性和性能都会影响音讯的时效性。 音讯的时效性是指,音讯从业务方发动用设施收到的耗时。那么如何掂量音讯的时效性呢?咱们持续往下看。 10、如何实现音讯时效性的监控与品质度量? 传统的音讯时效性测量方法如上图左所示:发送端和接收端在两个设施上,在发送的时候取工夫t1、在接管到音讯的时候取工夫t2,这两个工夫相减失去音讯的耗时。然而这种办法并不谨严,为什么呢?因为这两个设施的工夫基准,很有可能是不统一的。 咱们采纳的解决方案如上图右图所示:将发送端和接收端放在同一个设施上,这样就能够解决工夫基准的问题。咱们就是基于该计划,搭建了一套拨测系统,来被动监控音讯送达耗时散布。 11、如何实现高性能、稳固的长连贯网关?过来10年探讨单机长连贯性能时面对的是单机一万连贯的问题(C10K问题),而作为一个上亿级设施同时在线的平台,咱们要面对的是单机100万连贯的问题。 作为长连贯网关,主要职责是保护与设施端的TCP连贯及数据包转发。对于长连贯网关:咱们应该尽可能使其轻量化。 咱们从以下几方面进行了自上而下的重构优化:1)架构设计;2)编码;3)操作系统配置;4)硬件个性配置。 具体的施行办法,比方:1)调整零碎最大文件句柄数、单个过程最大的文件句柄数;2)调整零碎网卡软中断负载平衡或者开启网卡多队列、RPS/RFS;3)调整TCP相干参数比方keepalive(须要依据宿主机的session工夫进行调整)、敞开timewait recycles;4)硬件上应用AES-NI指令减速数据的加解密。 通过咱们优化之后,线上8C32GB 的服务器能够稳固反对170万的长连贯。 另外一大难点在于连贯保活:一条端到端的 TCP连贯,两头通过层层路由器、网关,而每个硬件的资源都是无限的,不可能将所有TCP连贯状态都长期保留。所以为了防止TCP资源,被两头路由器回收导致连贯断开,咱们须要定时发送心跳申请,来放弃连贯的沉闷状态(为什么TCP有这样的问题?有趣味能够读这两篇:《为什么说基于TCP的挪动端IM依然须要心跳保活?》、《彻底搞懂TCP协定层的KeepAlive保活机制》)。 心跳的发送频率多高才适合?发送太快了会引起功耗、流量问题,太慢了又起不到成果,所以为了缩小不必要的心跳及晋升连贯稳定性,咱们采纳智能心跳,为不同网络环境采纳差异性的频率。 无关长连贯心跳机制的更详细资料,能够参阅:《手把手教你用Netty实现网络通信程序的心跳机制、断线重连机制》《一文读懂即时通讯利用中的网络心跳包机制:作用、原理、实现思路等》《挪动端IM实际:实现Android版微信的智能心跳机制》《挪动端IM实际:WhatsApp、Line、微信的心跳策略剖析》《一种Android端IM智能心跳算法的设计与实现探讨(含样例代码)》《正确理解IM长连贯、心跳及重连机制,并入手实现》《万字长文:手把手教你实现一套高效的IM长连贯自适应心跳保活机制》《Web端即时通讯实际干货:如何让你的WebSocket断网重连更疾速?》 12、如何实现亿级设施的负载平衡?咱们平台超过亿级设施同时在线,各个设施连贯长连贯网关时是通过流量调度零碎进行负载平衡的。当客户端申请获取IP时,流量调度零碎会下发多个就近接入网关IP: 那么调度零碎是如何确保下发的ip是可用的呢?大家能够简略思考下。 对于我来来说,咱们采纳四种策略:1)就近接入 ;2)公网探测 ;3)机器负载;4)接口成功率。 到底采纳这几种策略呢?大家能够想下,这两个问题: 1)内网失常,公网就肯定能联通吗?2)连接数少服务器,就肯定是可用的吗? 答案是否定的,因为长连贯网关与流量调度零碎是通过内网进行心跳保活的,所以在流量调度零碎上看到的长连贯网关是失常的,然而很有可能长连贯网关公网连贯是异样的比方没有开明公网权限等。 所以咱们须要联合多种策略,来评估节点的可用性,保障系统的负载平衡、为零碎稳定性提供保障。 13、如何满足高并发需要?有这么一个场景:以每秒1000的推送速度,将一条新闻发送给几亿用户,那么有的用户可能是几天后才收到这条音讯,这就十分影响用户体验,所以高并发对音讯的时效性来说是十分重要的。 从上图的推送流程来看:会不会感觉TiDB会成为推送的性能瓶颈?其实不会:初步看可能会感觉它们作为核心存储,但因为咱们采纳分布式缓存,将核心存储的数据,依据肯定的策略缓存到各个业务节点,充分利用服务器资源,晋升零碎性能、吞吐量。咱们线上的分布式缓存命中率99.9% 为核心存储挡住了绝大部分申请,即便TiDB短时间故障,对咱们影响也比拟小。 14、如何保障系统稳定性?14.1 概述作为推送平台,平台的流量次要分为内部调用及外部上下游之间的调用。它们大幅稳定都会影响零碎的稳定性,所以须要进行限流、控速,保障系统稳固运行。 14.2 推送网关限流 推送网关作为流量入口,其稳定性十分重要。要让推送网关稳固运行,咱们首先要解决流量平衡的问题即防止流量歪斜的问题。因为流量歪斜之后,很有可能会引起雪崩的状况。咱们是采纳轮询的机制,进行流量的负载平衡,来防止流量歪斜问题。然而这里有两个前提条件:1)所有推送网关节点,服务器配置要保持一致,否则很有可能会因为某个解决能力有余导致过载问题;2)应管制流入咱们零碎的并发量,防止流量洪峰穿透推送网关导致后端服务过载。咱们采纳的是令牌桶算法,管制每个推送网关投放速度,进而可能对上游节点起到爱护作用。那么令牌数量设置多少才适合呢?设置低了,上游节点资源不能充分利用;设置太高了,上游节点有可能扛不住。 咱们能够采纳被动+被动的动静调整的策略:1)当流量超过上游集群解决能力时,告诉上游进行限速;2)当调用上游接口超时,达到肯定比例是进行限流。 14.3 零碎外部限速:标签推送平滑下发既然推送网关曾经限流了,为什么外部节点之间还要限速? ...

August 11, 2022 · 1 min · jiezi

关于消息推送:双11大促-消息推送资源包6折购一键集成华为小米等多厂商推送通道

11月来了 又到了商家打折、顾客剁手的节令图片 点击中转 > > mPaaS 折扣会场 < < 2021年阿里云双11大促【正式场】将于11月1日正式开启,此次双11 mPaaS 为挪动开发者们带来了哪些优惠活动呢?让咱们一一梳理 MPS:开发必备组件 6 折购一键集成华为、小米等多厂商推送通道忽视终端机型,精确触达用户 业余的挪动音讯推送计划,针对不同的场景推出多种推送类型,满足个性化推送需要。反对国内外支流厂商通道集成,最大可能晋升达到率。推送全流程外围指标可视化剖析监控。低成本集成,开箱即用。 mPaaS 平安服务 8 折购利用加固:源自于淘系利用上亿级业务安防锻炼针对挪动利用普遍存在的破解、篡改、盗版、内存调试等各类平安危险,提供深度的防逆向、防调试、防篡改爱护;同时,针对 JavaByteCode 级别提供当先行业的混同爱护,全面爱护代码逻辑。 操作简便、清晰,兼顾安全性与兼容性,极低解体率。破解者难以逆向剖析其原始代码逻辑,充沛保障应⽤安全性。 利用隐衷合规检测根据国家相干法律法规及行业标准,对挪动APP隐衷平安、集体数据收集和应用进行合规剖析。帮忙企业及APP开发者辨认平安危险,提供对应的专家整改倡议,助力客户躲避监管处罚及通过利用审核上架 。 隐衷协定检测,业余法务解读。敏感权限、个人信息采集行为辨认定位定制化场景检测 mPaaS 更多热卖资源包一键洽购 mPaaS 外围根底能力,让老本更可控。 本期上架的资源包套餐及其优惠详情如下: 月度资源包:按月洽购“实时公布+端上剖析”外围能力,享 8.5 折特惠。年度资源包:按年洽购外围能力,送 mPaaS 等全套根底能力。点击理解资源包更多详情

November 1, 2021 · 1 min · jiezi

关于消息推送:你的-APP-能否精准推送击中用户

亲,爆款产品折上折,全场 5.9 元包邮!福利来袭,充值送好礼~道具特惠,动手不亏。【关注 融云寰球互联网通信云】毫无疑问,11 月还没到,“双 11”先到了。不仅是剁手 APP,各大利用都搜索枯肠趁着这股风来一波大促,或回馈用户,或加强粘性,或冲刺 KPI。而将这些好消息传播给用户,音讯推送(Push)是最间接的形式。 现在,大部分手机 APP 都有音讯推送性能。作为揭示或唤醒用户的形式之一,用好推送是高效达成经营指标的重要抓手。 进步产品活跃度、晋升用户粘性和留存率,须要精细化经营策略,更须要高送达率和用户分层服务能力等底层技术的撑持。在音讯推送服务上,思考到开发成本和送达率,大部分 APP 会优先思考借力融云等第三方服务商。 融云作为专一通信云赛道多年的 PaaS 厂商,以 IM+RTC+X“全”通信解决方案高效赋能开发者。其中,推送是融云最早打造的 X 能力之一。开发者只需集成一套融云的 IM SDK,无需再自行逐个对接多家手机品牌厂商,即可取得毫秒级触达指标用户的极致体验。联合标签推送、多种推送场景和推送统计等能力,让 APP 精准“击中”指标用户。 一站式推送,精细化经营俗话说,不合乎用户习惯的推送都是耍流氓。推送经营须要均衡用户体验和平台指标,最终让用户称心,为平台带来价值。融云推送服务不仅笼罩全平台,还凋谢 API 接口,供开发者依据用户画像实现多场景的精准推送,并提供统计等一站式服务。 推送平台全笼罩 全面笼罩小米、华为、OPPO、vivo、魅族、一加、Realme、FCM、APNs 手机零碎级推送通道,可保障推送成功率。 融云目前曾经跟各大厂商的推送平台做好对接,应用融云 SDK 能够一站式取得对接各厂商推送平台的能力,毋庸独自做对接。 **全量 & 标签推送** 依据用户属性设置用户标签、进行标签分组,建设精准用户画像,让推送更精准,晋升推送点击率、转化率及用户留存率。基于用户的个性化需要实现推送,既能够进步转化率,又满足用户所想。 多种推送场景反对 反对文本、富媒体、自定义音讯等内容推送,吸引用户点击,满足各场景的推送经营需要,如:社交互动告诉、交易状态同步告诉、系统升级、帐号唤醒拉活告诉、流动经营告诉等。 推送统计能力 推送成果剖析,通过融云平台反对查看各手机厂商平台推送数据状况,如推送的胜利、失败、达到、点击,无效把握推送品质状况。 音讯级推送属性设置 单聊、群聊场景下,发送单条音讯时可设置该条音讯的推送属性,如:推送题目、推送内容、推送 channel_Id、通道类型、是否强制显示推送告诉等,开发者可依据业务须要进行灵便设置。 推送多语言模板设置 在寰球业务中,利用的终端用户散布于多个国家,在发送系统升级、经营流动类告诉时,须要给不同语言环境的用户推送不同的经营内容。 通过推送模板,可依据指标用户设置的语言环境,从推送模板中抉择对应语言的内容进行近程推送,加强经营成果,晋升用户应用体验。 积攒深厚,劣势当先凭借融云在 IM 即时通讯畛域的深厚技术积攒,以及多年稳固牢靠的音讯推送服务能力,融云推送服务具备多方面当先劣势。 一套 SDK 解决所有问题 只需集成一套融云 IM SDK,即可取得 IM 即时通讯能力和推送经营能力,可简略疾速实现利用内的零碎告诉和站内揭示模块;不便业务经营,晋升留存率和召回率;节俭了开发者须要同时对接多个厂商的工夫和精力,升高开发和应用老本。 同时,融云搭建业余团队随时响应开发者征询,解答开发者疑难,帮助开发者定位、剖析问题。 底层架构弱小,高效散发 融云通信网络覆盖寰球 233 个国家及地区,领有几千个动静减速节点,可急速触达用户。 为保障高效,融云通过分组散发和批量解决两个模型进行推送散发,采纳统一哈希算法,一次推送申请只跟上游节点数无关,不受设施数量影响,极大晋升散发效率。 多通道策略,保障送达率 融云 SDK 对接了各厂商推送,配合搭建的自有推送通道,智能抉择最优计划,最大水平保障了推送达到率和时效性,给开发者毫秒级触达指标用户的极致体验。 ...

October 25, 2021 · 1 min · jiezi