CN106899493B - 基于UDP与Https实现的消息推送方法及其装置 - Google Patents
基于UDP与Https实现的消息推送方法及其装置 Download PDFInfo
- Publication number
- CN106899493B CN106899493B CN201710096638.3A CN201710096638A CN106899493B CN 106899493 B CN106899493 B CN 106899493B CN 201710096638 A CN201710096638 A CN 201710096638A CN 106899493 B CN106899493 B CN 106899493B
- Authority
- CN
- China
- Prior art keywords
- message
- user account
- account identification
- database
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/214—Monitoring or handling of messages using selective forwarding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/164—Adaptation or special uses of UDP protocol
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了基于UDP与Https实现的消息推送方法及其装置,该方法包括如下步骤:S1、请求端通过UDP发送用户账号标识至服务器,以使服务器判断第一数据库中是否存在和该用户账号标识相同的消息账号标识,如果是发送反馈信息至请求端;S2、请求端通过Https发送用户账号标识至消息查询接口,以使消息查询接口根据用户账号标识获取对应的消息数据并发送至请求端。本发明的优点在于通过UDP读取第一数据库中相同的用户账号标识而发送反馈信息至请求端,以使请求端根据反馈信息去获取对应的消息数据,有效降低网络传输流量,降低并发量;以及通过Https读取第二数据库的消息数据,确保消息的通讯安全,不被网络截获。
Description
技术领域
本发明涉及基于UDP与Https实现的消息推送方法及其装置。
背景技术
金融交易类App用户经常需要接收服务端推送的业务消息,例如:支付提示、融资提醒、还款提醒、资金变动消息、版本更新消息、营销广告消息等。在应用时,有大量APP应用同时发送请求到服务端获得消息,每一个APP应用相当于一个请求,如果10w手机用户安装了某个APP应用,则相当于10w个APP需要实现消息推送,某些***在1000条并发请求的情况下可以很好地运行,但到达1w高并发的情况下,就会产生性能问题,严重导致服务器宕机。从金融业务情景分析,实现这种APP消息推送功能,需要解决由于高并发导致服务器宕机的技术问题。
发明内容
为了克服现有技术的不足,本发明的目的在于提供基于UDP与Https实现的消息推送方法及其装置,其能解决由于高并发导致的服务器宕机的技术问题。
本发明的目的之一采用以下技术方案实现:
基于UDP与Https实现的消息推送方法,应用于移动APP消息推送***,消息推送***包括请求端、服务器、第一数据库、第二数据库和消息查询接口;
该方法包括如下步骤:
S1、请求端通过UDP发送用户账号标识至服务器,以使服务器根据该用户账号标识,判断第一数据库中是否存在和该用户账号标识相同的消息账号标识,如果是发送反馈信息至请求端;
S2、请求端根据接收到的反馈信息通过Https发送用户账号标识至消息查询接口,以使消息查询接口根据用户账号标识从第二数据库中获取与该用户账号标识对应的消息数据,并将消息数据发送至请求端。
作为优选,S2中消息查询接口将消息数据发送至请求端后,还将第二数据库中与该用户账号标识对应的消息数据删除,以及将第一数据库中对应的消息账号标识删除。
作为优选,S1之后还包括如下步骤:
S11、请求端判断是否在第一预设时间内接收到服务器发送来的反馈信息,如果是则执行S2,否则执行S12;
S12、经过第二预设时间后,返回S11。
作为优选,S2之后还包括如下步骤:
S3、请求端将接收到的消息数据进行显示,经过第三预设时间后,返回S1。
本发明的目的之二采用以下技术方案实现:
基于UDP与Https实现的消息推送装置,包括:
第一发送模块、用于通过UDP发送用户账号标识至服务器,以使服务器根据该用户账号标识,判断第一数据库中是否存在和该用户账号标识相同的消息账号标识,如果是发送反馈信息至请求端;
第二发送模块,用于根据接收到的反馈信息通过Https发送用户账号标识至消息查询接口,以使消息查询接口根据用户账号标识从第二数据库中获取与该用户账号标识对应的消息数据,并将消息数据发送至请求端。
作为优选,第二发送模块中消息查询接口将消息数据发送至请求端后,还将第二数据库中与该用户账号标识对应的消息数据删除,以及将第一数据库中对应的消息账号标识删除。
作为优选,推送装置还包括:
第一判断模块,用于判断是否在第一预设时间内接收到服务器发送来的反馈信息,如果是则执行第二发送模块,否则执行返回模块;
返回模块,用于经过第二预设时间后,返回第一判断模块。
作为优选,推送装置还包括:
显示模块,用于将接收到的消息数据进行显示,经过第三预设时间后,返回第一发送模块。
相比现有技术,本发明的有益效果在于:通过UDP读取第一数据库中相同的用户账号标识而发送反馈信息至请求端,以使请求端根据反馈信息去获取对应的消息数据,有效降低网络传输流量,降低并发量;以及通过Https读取第二数据库的消息数据,确保消息的通讯安全,不被网络截获。
附图说明
图1为本发明的消息推送***的模块连接图;
图2为本发明的消息推送***的逻辑框架图;
图3为本发明的消息推送方法的流程图;
图4为本发明的消息推送方法的业务流程图;
图5为本发明的消息推送装置的模块连接图。
具体实施方式
下面,结合附图以及具体实施方式,对本发明做进一步描述:
基于UDP与Https实现的消息推送方法及其装置,应用于移动APP消息推送***,如图1至图2所示,消息推送***包括请求端和后台***,后台***包括服务器、第一数据库、第二数据库、消息查询接口和后台输入端。请求端可以是但不限于智能终端中的APP应用。
基于UDP与Https实现的消息推送方法,如图3至图4所示,包括如下步骤:
步骤100、后台输入端将待推送的数据包中的消息账号标识写入第一数据库,将待推送的数据包中的消息数据写入第二数据库。
步骤101、请求端发送用户账号标识至服务器,以使服务器根据该用户账号标识,判断第一数据库中是否存在和该用户账号标识相同的消息账号标识,如果是发送反馈信息沿路返回至请求端,否则不做任何操作。
具体地,请求端通过UDP发送用户账号标识至服务器。该反馈信息可以是任意字符。
其中,每个请求端都有其对应的用户账号标识;第一数据库中预存有多个消息账号标识,由后台输入端录入。
步骤102、请求端启动Scoket服务端,监听发送用户账号标识的端口,判断该端口是否在第一预设时间内接收到服务器发送来的反馈信息,如果是则接收服务器发送来的反馈信息,关闭Scoket服务端,并执行步骤104,否则执行步骤103。
scoket服务端,是由请求端自身应用Socket技术以其发送用户账号标识的端口的IP地址作为地址,启动的一个网络服务端,以等待接收服务器发送来的反馈信息。
步骤103、请求端关闭Scoket服务端,经过第二预设时间后,返回步骤102。第一预设时间为若干秒,第二预设时间为若干分钟。
步骤104、请求端将用户账号标识发送至消息查询接口,以使消息查询接口根据用户账号标识从第二数据库中获取到与该用户账号标识对应的消息数据,并将消息数据发送至请求端;以及,消息查询接口将第二数据库中与该用户账号标识对应的消息数据删除,将第一数据库中对应的消息账号标识删除。
具体地,请求端通过Https发送用户账号标识至消息查询接口;
其中,第二数据库中预存有多个消息数据,该多个消息数据与第一数据库中多个消息账号标识一一对应,由后台输入端录入;用户账号标志在第一数据库中有相同的消息账号标志,则意味着在第二数据库中存在和该用户账号标识对应的消息数据。
步骤105、请求端将接收到的消息数据进行显示,经过第三预设时间后,返回步骤101。第三预设时间为若干分钟。
UDP(User Datagram Protocol)是用户数据报协议,是OSI(Open SystemInterconnection,开放式***互联)参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。
UDP传输比常用的TCP性能高大概6、7倍,UDP没有多次握手的过程;同时本方法通过UDP获取的不是具体消息数据,而只是和消息数据对应的一个用户账号标识,可能是一个字符”true”或者一个数字1,视具体业务而定,因此网络传输流量相当小;而且并不是每个APP用户都同时存在未读的消息数据。举个例子,10w个APP用户,某一时刻可能只有5000个APP用户有未读的消息数据,因此没必要开启10w个请求获取消息,只需要使这5000个APP用户获取消息就可以,因此,本发明大量地减少了并发量。
HTTPS(Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道。当APP应用端获取到存在未读的消息数据对应的用户账号标识时,由APP应用启动Https方式请求“消息查询接口”,读取未读的消息数据的具体内容,而Https自身拥有验签和加密一系列的安全措施,使用Https通讯解决通讯安全问题的。
本方法中,后台***不需要使用任何机制(例如心跳机制)保存APP应用的通讯IP;以及,因为应用了Https通讯,无须自定义一套加密通讯方式;以及,本方法中由于APP应用定时循环发送UDP请求,如果链接中断或丢失,则会在下一次请求流程中重新获取消息,故涉及的任何一条链接由于任何原因中断,或数据在传输过程中丢失,都不影响消息的推送。实现兼顾了***稳定性、降低开发成本和维护成本。
基于UDP与Https实现的消息推送装置,如图5所示,包括:
第一发送模块、用于通过UDP发送用户账号标识至服务器,以使服务器根据该用户账号标识,判断第一数据库中是否存在和该用户账号标识相同的消息账号标识,如果是发送反馈信息至请求端,否则无返回。
第一判断模块,用于判断是否在第一预设时间内接收到服务器发送来的反馈信息,如果是则执行第二发送模块,否则执行返回模块。
返回模块,用于经过第二预设时间后,返回第一判断模块。
第二发送模块,用于根据接收到的反馈信息通过Https发送用户账号标识至消息查询接口,以使消息查询接口根据用户账号标识从第二数据库中获取与该用户账号标识对应的消息数据,并将消息数据发送至请求端。
显示模块,用于将接收到的消息数据进行显示,经过第三预设时间后,返回第一发送模块。
对本领域的技术人员来说,可根据以上描述的技术方案以及构思,做出其它各种相应的改变以及形变,而所有的这些改变以及形变都应该属于本发明权利要求的保护范围之内。
Claims (7)
1.基于UDP与Https实现的消息推送方法,应用于移动APP消息推送***,消息推送***包括请求端、服务器、第一数据库、第二数据库和消息查询接口,其特征在于,包括如下步骤:
S1、请求端通过UDP发送用户账号标识至服务器,以使服务器根据该用户账号标识,判断第一数据库中是否存在和该用户账号标识相同的消息账号标识,如果是发送反馈信息至请求端;
S11、请求端启动Socket服务端,监听发送用户账号标识的端口,判断该端口是否在第一预设时间内接收到服务器发送来的反馈信息,如果是则接收服务器发送来的反馈信息,关闭Socket服务端,并执行S2,否则执行S12;
S12、经过第二预设时间后,返回S11;
S2、请求端根据接收到的反馈信息通过Https发送用户账号标识至消息查询接口,以使消息查询接口根据用户账号标识从第二数据库中获取与该用户账号标识对应的消息数据,并将消息数据发送至请求端。
2.如权利要求1所述的推送方法,其特征在于,S2中消息查询接口将消息数据发送至请求端后,还将第二数据库中与该用户账号标识对应的消息数据删除,以及将第一数据库中对应的消息账号标识删除。
3.如权利要求1或2所述的推送方法,其特征在于,S2之后还包括如下步骤:
S3、请求端将接收到的消息数据进行显示,经过第三预设时间后,返回S1。
4.基于UDP与Https实现的消息推送装置,其特征在于,包括:
第一发送模块、用于通过UDP发送用户账号标识至服务器,以使服务器根据该用户账号标识,判断第一数据库中是否存在和该用户账号标识相同的消息账号标识,如果是发送反馈信息至请求端;
第二发送模块,用于根据接收到的反馈信息通过Https发送用户账号标识至消息查询接口,以使消息查询接口根据用户账号标识从第二数据库中获取与该用户账号标识对应的消息数据,并将消息数据发送至请求端。
5.如权利要求4所述的推送装置,其特征在于,第二发送模块中消息查询接口将消息数据发送至请求端后,还将第二数据库中与该用户账号标识对应的消息数据删除,以及将第一数据库中对应的消息账号标识删除。
6.如权利要求4所述的推送装置,其特征在于,还包括:
第一判断模块,用于判断是否在第一预设时间内接收到服务器发送来的反馈信息,如果是则执行第二发送模块,否则执行返回模块;
返回模块,用于经过第二预设时间后,返回第一判断模块。
7.如权利要求4所述的推送装置,其特征在于,还包括:
显示模块,用于将接收到的消息数据进行显示,经过第三预设时间后,返回第一发送模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710096638.3A CN106899493B (zh) | 2017-02-22 | 2017-02-22 | 基于UDP与Https实现的消息推送方法及其装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710096638.3A CN106899493B (zh) | 2017-02-22 | 2017-02-22 | 基于UDP与Https实现的消息推送方法及其装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106899493A CN106899493A (zh) | 2017-06-27 |
CN106899493B true CN106899493B (zh) | 2020-04-24 |
Family
ID=59184187
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710096638.3A Active CN106899493B (zh) | 2017-02-22 | 2017-02-22 | 基于UDP与Https实现的消息推送方法及其装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106899493B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111176863B (zh) * | 2019-12-31 | 2023-08-11 | 浪潮软件股份有限公司 | 一种基于nodejs的消息提醒***与方法 |
CN118233424A (zh) * | 2020-10-27 | 2024-06-21 | 花瓣云科技有限公司 | 处理推送消息的方法和装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102209068A (zh) * | 2010-03-29 | 2011-10-05 | 上海博泰悦臻电子设备制造有限公司 | 服务平台及其广告信息发布方法、广告信息发布*** |
CN102215121A (zh) * | 2010-04-07 | 2011-10-12 | 苹果公司 | 用于建立和利用备份通信信道的装置和方法 |
CN103905504A (zh) * | 2012-12-27 | 2014-07-02 | 海尔集团公司 | 一种信息推送方法及*** |
CN103973545A (zh) * | 2014-04-22 | 2014-08-06 | 腾讯科技(深圳)有限公司 | 即时消息的处理方法、装置及*** |
CN103997539A (zh) * | 2014-06-06 | 2014-08-20 | 北京航空航天大学 | 基于web服务的雷达运行状态采集分发***及其方法 |
CN104010039A (zh) * | 2014-06-05 | 2014-08-27 | 北京航空航天大学 | 一种基于WebSocket的多雷达远程监控***及方法 |
CN104834674A (zh) * | 2015-03-31 | 2015-08-12 | 北京奇艺世纪科技有限公司 | 收集用户行为数据、信息推荐方法及装置 |
CN105471964A (zh) * | 2015-11-16 | 2016-04-06 | 中国建设银行股份有限公司 | 用于数据推送的方法、服务器、客户端以及*** |
CN105637926A (zh) * | 2013-06-11 | 2016-06-01 | 七网络有限责任公司 | 将应用流量分载至共享通信信道进行无线网络中的信令优化用于使用专有和非专有协议的流量 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7721104B2 (en) * | 2003-10-20 | 2010-05-18 | Nokia Corporation | System, method and computer program product for downloading pushed content |
US8230214B2 (en) * | 2006-08-21 | 2012-07-24 | Citrix Systems, Inc. | Systems and methods for optimizing SSL handshake processing |
CN101072386B (zh) * | 2007-06-22 | 2010-06-23 | 腾讯科技(深圳)有限公司 | 业务服务器、***消息服务器和消息广播方法 |
US8463848B2 (en) * | 2009-07-15 | 2013-06-11 | Hippocrene Llc | System and method of transmitting data over a computer network including for presentations over multiple channels in parallel |
CN102469121A (zh) * | 2010-11-05 | 2012-05-23 | 北京创新方舟科技有限公司 | 一种用于为移动用户提供通讯信息的方法与设备 |
-
2017
- 2017-02-22 CN CN201710096638.3A patent/CN106899493B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102209068A (zh) * | 2010-03-29 | 2011-10-05 | 上海博泰悦臻电子设备制造有限公司 | 服务平台及其广告信息发布方法、广告信息发布*** |
CN102215121A (zh) * | 2010-04-07 | 2011-10-12 | 苹果公司 | 用于建立和利用备份通信信道的装置和方法 |
CN103905504A (zh) * | 2012-12-27 | 2014-07-02 | 海尔集团公司 | 一种信息推送方法及*** |
CN105637926A (zh) * | 2013-06-11 | 2016-06-01 | 七网络有限责任公司 | 将应用流量分载至共享通信信道进行无线网络中的信令优化用于使用专有和非专有协议的流量 |
CN103973545A (zh) * | 2014-04-22 | 2014-08-06 | 腾讯科技(深圳)有限公司 | 即时消息的处理方法、装置及*** |
CN104010039A (zh) * | 2014-06-05 | 2014-08-27 | 北京航空航天大学 | 一种基于WebSocket的多雷达远程监控***及方法 |
CN103997539A (zh) * | 2014-06-06 | 2014-08-20 | 北京航空航天大学 | 基于web服务的雷达运行状态采集分发***及其方法 |
CN104834674A (zh) * | 2015-03-31 | 2015-08-12 | 北京奇艺世纪科技有限公司 | 收集用户行为数据、信息推荐方法及装置 |
CN105471964A (zh) * | 2015-11-16 | 2016-04-06 | 中国建设银行股份有限公司 | 用于数据推送的方法、服务器、客户端以及*** |
Also Published As
Publication number | Publication date |
---|---|
CN106899493A (zh) | 2017-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7672680B1 (en) | Web services architecture system and method | |
WO2020215909A1 (en) | Method, client device and pos terminal for offline transaction | |
CN111381981B (zh) | 小程序消息的推送方法、装置、设备及存储介质 | |
US8655341B2 (en) | Methods for mobile phone applications | |
US9420107B2 (en) | Service request routing using passive skill certification | |
CN105474574A (zh) | 使用设备标识符进行认证的***和方法 | |
CN110263581A (zh) | 合同签署方法、***、终端设备及存储介质 | |
CN106899493B (zh) | 基于UDP与Https实现的消息推送方法及其装置 | |
WO2009145659A1 (ru) | Способ доставки целевой рекламы и/или информации и система для осуществления способа | |
CN101217567A (zh) | 一种页面的推送方法、***和装置 | |
US11146649B2 (en) | Computer-implemented method and computer system for distributing push notifications | |
CN115951923B (zh) | 订阅事件管理方法、显示***、设备和存储介质 | |
RU2520417C2 (ru) | Способ использования мобильных телефонов | |
US8788638B2 (en) | Method and arrangement for registering a user | |
KR20030063791A (ko) | 유·무선 복합 클라이언트 인증 및 이벤트 정보 처리시스템 | |
CN114339628A (zh) | 5g富媒体消息发送方法、设备、存储介质及产品 | |
EP3151519B1 (en) | An intelligent system of unified content posting | |
KR20120075584A (ko) | 소셜 네트워크 서비스를 이용한 금융 거래 시스템 및 거래내역 통보방법 | |
KR20140140756A (ko) | 스마트폰을 이용한 무료 문자메시지 발송 시스템 | |
CN103092611A (zh) | 一种移动广告api的交互***及方法 | |
CN113824625B (zh) | 信息交互的方法和装置 | |
CN111131438B (zh) | 用于访问区块链的方法和装置 | |
CN110430256B (zh) | 推送交易消息报文的方法、装置和计算机*** | |
KR20090127396A (ko) | 모바일 쿠폰 교환 시스템 | |
KR20070019011A (ko) | 유무선 복합 이벤트 정보 처리방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PP01 | Preservation of patent right | ||
PP01 | Preservation of patent right |
Effective date of registration: 20210922 Granted publication date: 20200424 |