CN107197017A - 一种基于消费队列的消费方法、终端及计算机可读存储介质 - Google Patents
一种基于消费队列的消费方法、终端及计算机可读存储介质 Download PDFInfo
- Publication number
- CN107197017A CN107197017A CN201710370175.5A CN201710370175A CN107197017A CN 107197017 A CN107197017 A CN 107197017A CN 201710370175 A CN201710370175 A CN 201710370175A CN 107197017 A CN107197017 A CN 107197017A
- Authority
- CN
- China
- Prior art keywords
- consumption
- queue
- information
- redis
- current
- 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.)
- Pending
Links
Classifications
-
- 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/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种基于消费队列的消费方法、终端及计算机可读存储介质,涉及通信技术领域,所述基于消费队列的消费方法包括:从Redis远程字典服务器的消费队列中获取当前消费信息;监控所述当前消费信息的消费情况,当所述当前消费信息处理失败后,向Redis返回消费失败信息,以便Redis将所述当前消费信息重新列入所述消费队列中。本发明消费终端对每个消费信息的消费情况进行监控,当有消费信息消费失败时,向Redis返回消费失败信息,Redis将消费失败的信息重新列入消费队列中,再次进行消费处理,直至该消费信息处理成功为止。能避免对处理失败的消费信息的遗漏,保证对每个消费信息的成功消费。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种基于消费队列的消费方法、终端及计算机可读存储介质。
背景技术
消息(Message)是在两台计算机间传送的数据,消息可以非常简单,只包含少量文本字符串,也可以更复杂,包含较大的对象数据。消费队列机制为应用程序开发人员提供了一种应用程序间快速可靠的通信方式,即通过消息的传递来实现信息的交互。
消费队列系统(又名消息中间件)被广泛的用于各个互联网公司。作为消息的一种缓冲机制,它可以有效的减轻公司后台服务器的压力。
一个典型的消费队列系统由三部分组成:
1.生产者端:负责向消费队列发送消息的终端。
2.消费者端:从消费队列中获得消息的终端。
3.消费队列:用于存储消息的中间件。通常来说,消费队列系统的中间件包括多个消费队列,这些消费队列用于存储生产者端发送过来的消息。消费队列通常设置在至少一台服务器上,在实际操作中通常为多台服务器。
由于这种系统是由三部分组成,所以可以有多个生产者端向同一个中间件发送消息,也有可能会有多个消费者端从中间件中拉取消息,进行消费。
举例来说,对于电商而言,用户作为生产者端,其产生的订单会被首先发送至消费队列,然后其他程序作为消费者端,会从该消费队列中拉取消息进行消费,即对订单进行处理。采用消费队列的好处是:不管前台产生订单的速度如何迅猛,通过中间消费队列的缓存,可以保证后台程序的正常运行,从而避免了网络波峰可能对后台服务器造成的压力。
不仅如此,消费队列还被广泛用在及时通讯等应用中。比如当两台终端通讯时,首先由终端一发送了一条消息给自己的好友,该消息会被缓存在消费队列中,继而被推送至对应好友的终端的软件中。这种设计的好处是,当好友不在线(即没有打开对应的软件时),消费队列可以被当作一种数据的存储工具。由于不需要提供查询、删除等操作,所以使用消费队列作为存储工具,比传统的数据库要高效很多。
以下为消费队列系统的具体工作方式:
生产者端一般采用轮询的方式向各个消费队列轮流发送消息,例如中间件中一共有3个消费队列,那么生产者端会采用“消费队列1-消费队列2-消费队列3-消费队列1-消费队列2-消费队列3”这种顺序,分别向各个消费队列发送消息。
对于消费者端,目前,对于绝大数消费队列系统,消费者端都可以自己决定每次从中间件拉取多少条消息,而所拉取的消息是从一个消费队列获取还是从多个消费队列获取一般由系统本身决定。目前而言,大多数开源系统采用轮询的方式,轮流的从各个消费队列获取消费者端需要的消息。例如,当有三个消费队列的时候,消费者端如果先后发送了获取1条消息,10条消息,100条消息的命令,那么系统会相应的从消费队列1获取1条消息给消费者端,从消费队列2获取10条消息给消费者端,从消费队列3获取100条消息给消费者端。
但是,目前的消费方案不能保证每个消息都被消费这消费掉,即存在不被消费掉的消息。目前的绝大数消费队列系统在以下几个场景中会出现消费不掉的现象:
场景一,当生产者端没有严格按照轮询的方式向各个消费队列发送消息,但是消费者端依然采用轮询的方式来消费,此时就会造成某个消费队列中的消息积压。例如,假设有3个消费队列,而生产者端轮询的向3个消费队列发送消息,但是并不是每次都发送1条,而是给消费队列1发送10条消息,给消费队列2发送100条消息,给消费队列3发送1000条消息。那么如果消费者端仍然按照轮询均匀的消费,那么消费队列3的消息会严重积压,导致消费队列3消费不掉的现象出现。
场景二,生产者端并非均匀消费。例如,消费者端可以按照每次1条消息,10条消息,100条消息的顺序从各个消费队列拉取消息,那么消费队列3的消息会被消费得很快,而消费队列1的消息会消费的很慢,尽管这两个消费队列的消息生产时间也许是一致的,同样造成消费队列1消费不掉的现象出现。
场景三,服务器集群的某个节点宕机。消费队列往往支持分布式部署,多个消费队列可能分布在不同的节点上,当一个节点宕机之后,该节点上存储的消费队列不能继续接收消息,但是其他在线的节点仍然在接收消息,或者消费端仍在从其他在线节点消费消息。当该节点从故障中恢复过来之后,其存储的消息数量要小于其他节点上消费队列的消息数量。这也会导致消费对象消费不掉的现象。
基于以上情况,如何保证每个消费在任何情况下都能被消费者端正确的消费掉是本领域亟待解决的问题,目前各个开源系统都没有完美的解决这一问题。
发明内容
本发明的主要目的在于提出一种基于消费队列的消费方法、终端及计算机可读存储介质,旨在解决现有技术无法保证消费队列中每个消息都被正确消费的问题。
为实现上述目的,本发明一方面提供一种基于消费队列的消费方法,所述基于消费队列的消费方法包括:
从Redis远程字典服务器的消费队列中获取当前消费信息;
监控所述当前消费信息的消费情况,当所述当前消费信息处理失败后,向Redis返回消费失败信息,以便Redis将所述当前消费信息重新列入所述消费队列中。
进一步地,所述方法还包括:
当所述当前消费信息处理成功后,向Redis返回消费成功信息,以便Redis根据所述消费成功信息调整终端的消费速度。
进一步地,所述Redis根据所述消费成功信息调整终端的消费速度包括:
Redis接收到终端返回的消费成功信息时,确定所述终端对应消费区域的消费余量,根据所述消费余量调整所述终端的当前消费速度。
进一步地,所述方法还包括:
当所述当前消费信息处理成功后,向Redis返回消费成功信息,以便Redis根据所述读消息请求从消费队列中删除所述当前消费信息。
进一步地,所述从Redis的消费队列中获取当前消费信息包括:
向Redis发送读消息请求,所述读消息请求中包含待读取当前消费消息所属消费队列的读取标识;
接收Redis返回的当前消息信息。
本发明另一方面还提供一种基于消费队列的消费终端,所述基于消费队列的消费终端包括:处理器,存储有基于消费队列的消费程序的存储器;
所述处理器,用于执行存储器中存储的基于消费队列的消费程序,以实现以下步骤:
从Redis远程字典服务器的消费队列中获取当前消费信息;
监控所述当前消费信息的消费情况,当所述当前消费信息处理失败后,向Redis返回消费失败信息,以便Redis将所述当前消费信息重新列入所述消费队列中。
进一步地,所述当所述当前消费信息处理失败后,向Redis返回消费失败信息,以便Redis将所述当前消费信息重新列入所述消费队列中步骤之后,所述处理器还用于执行所述基于消费队列的消费程序,以实现以下步骤:
当所述当前消费信息处理成功后,向Redis返回消费成功信息,以便Redis根据所述消费成功信息调整终端的消费速度。
进一步地,所述当所述当前消费信息处理失败后,向Redis返回消费失败信息,以便Redis将所述当前消费信息重新列入所述消费队列中步骤之后,所述处理器还用于执行所述基于消费队列的消费程序,以实现以下步骤:
当所述当前消费信息处理成功后,向Redis返回消费成功信息,以便Redis根据所述读消息请求从消费队列中删除所述当前消费信息。
进一步地,所述从Redis的消费队列中获取当前消费信息步骤中,所述处理器还用于执行所述基于消费队列的消费程序,以实现以下步骤:
向Redis发送读消息请求,所述读消息请求中包含待读取当前消费消息所属消费队列的读取标识;
接收Redis返回的当前消息信息。
本发明另一方面还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有基于消费队列的消费程序,所述基于消费队列的消费程序被处理器执行时实现上述任一项所述的基于消费队列的消费方法的步骤。
本发明提供的一种基于消费队列的消费方法、终端及计算机可读存储介质,通过Redis中的消费队列存储各个消费信息,消费终端对每个消费信息的消费情况进行监控,当有消费信息消费失败时,向Redis返回消费失败信息,Redis将消费失败的信息重新列入消费队列中,再次进行消费处理,直至该消费信息处理成功为止。能避免对处理失败的消费信息的遗漏,保证对每个消费信息的成功消费。
附图说明
图1为实现本发明各个实施例的移动终端的硬件结构示意图;
图2为如图1所示的移动终端的无线通信系统示意图;
图3为本发明实施例中一种基于消费队列的消费终端的示意图;
图4为本发明实施例中一种基于消费队列的消费方法的流程图;
图5为本发明实施例中另一种基于消费队列的消费方法的流程图;
图6为本发明实施例中另一种基于消费队列的消费终端的示意图;
图7为本发明实施例中一种基于消费队列的消费服务器的示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(Personal Digital Assistant,PDA)、便捷式媒体播放器(Portable MediaPlayer,PMP)、导航装置、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字TV、台式计算机等固定终端。
后续描述中将以移动终端为例进行说明,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。
请参阅图1,其为实现本发明各个实施例的一种移动终端的硬件结构示意图,该移动终端100可以包括:RF(Radio Frequency,射频)单元101、WiFi模块102、音频输出单元103、A/V(音频/视频)输入单元104、传感器105、显示单元106、用户输入单元107、接口单元108、存储器109、处理器110、以及电源111等部件。本领域技术人员可以理解,图1中示出的移动终端结构并不构成对移动终端的限定,移动终端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图1对移动终端的各个部件进行具体的介绍:
射频单元101可用于收发信息或通话过程中,信号的接收和发送,具体的,将基站的下行信息接收后,给处理器110处理;另外,将上行的数据发送给基站。通常,射频单元101包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元101还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System ofMobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA2000(CodeDivision Multiple Access 2000,码分多址2000)、WCDMA(Wideband CodeDivisionMultipleAccess,宽带码分多址)、TD-SCDMA(Time Division-Synchronous CodeDivision Multiple Access,时分同步码分多址)、FDD-LTE(Frequency DivisionDuplexing-Long Term Evolution,频分双工长期演进)和TDD-LTE(Time DivisionDuplexing-Long Term Evolution,分时双工长期演进)等。
WiFi属于短距离无线传输技术,移动终端通过WiFi模块102可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图1示出了WiFi模块102,但是可以理解的是,其并不属于移动终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
音频输出单元103可以在移动终端100处于呼叫信号接收模式、通话模式、记录模式、语音识别模式、广播接收模式等等模式下时,将射频单元101或WiFi模块102接收的或者在存储器109中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元103还可以提供与移动终端100执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元103可以包括扬声器、蜂鸣器等等。
A/V输入单元104用于接收音频或视频信号。A/V输入单元104可以包括图形处理器(Graphics Processing Unit,GPU)1041和麦克风1042,图形处理器1041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元106上。经图形处理器1041处理后的图像帧可以存储在存储器109(或其它存储介质)中或者经由射频单元101或WiFi模块102进行发送。麦克风1042可以在电话通话模式、记录模式、语音识别模式等等运行模式中经由麦克风1042接收声音(音频数据),并且能够将这样的声音处理为音频数据。处理后的音频(语音)数据可以在电话通话模式的情况下转换为可经由射频单元101发送到移动通信基站的格式输出。麦克风1042可以实施各种类型的噪声消除(或抑制)算法以消除(或抑制)在接收和发送音频信号的过程中产生的噪声或者干扰。
移动终端100还包括至少一种传感器105,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1061的亮度,接近传感器可在移动终端100移动到耳边时,关闭显示面板1061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
显示单元106用于显示由用户输入的信息或提供给用户的信息。显示单元106可包括显示面板1061,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板1061。
用户输入单元107可用于接收输入的数字或字符信息,以及产生与移动终端的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元107可包括触控面板1071以及其他输入设备1072。触控面板1071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1071上或在触控面板1071附近的操作),并根据预先设定的程式驱动相应的连接装置。触控面板1071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器110,并能接收处理器110发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1071。除了触控面板1071,用户输入单元107还可以包括其他输入设备1072。具体地,其他输入设备1072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种,具体此处不做限定。
进一步的,触控面板1071可覆盖显示面板1061,当触控面板1071检测到在其上或附近的触摸操作后,传送给处理器110以确定触摸事件的类型,随后处理器110根据触摸事件的类型在显示面板1061上提供相应的视觉输出。虽然在图1中,触控面板1071与显示面板1061是作为两个独立的部件来实现移动终端的输入和输出功能,但是在某些实施例中,可以将触控面板1071与显示面板1061集成而实现移动终端的输入和输出功能,具体此处不做限定。
接口单元108用作至少一个外部装置与移动终端100连接可以通过的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。接口单元108可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到移动终端100内的一个或多个元件或者可以用于在移动终端100和外部装置之间传输数据。
存储器109可用于存储软件程序以及各种数据。存储器109可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器109可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器110是移动终端的控制中心,利用各种接口和线路连接整个移动终端的各个部分,通过运行或执行存储在存储器109内的软件程序和/或模块,以及调用存储在存储器109内的数据,执行移动终端的各种功能和处理数据,从而对移动终端进行整体监控。处理器110可包括一个或多个处理单元;优选的,处理器110可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器110中。
移动终端100还可以包括给各个部件供电的电源111(比如电池),优选的,电源111可以通过电源管理系统与处理器110逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管图1未示出,移动终端100还可以包括蓝牙模块等,在此不再赘述。
为了便于理解本发明实施例,下面对本发明的移动终端所基于的通信网络系统进行描述。
请参阅图2,图2为本发明实施例提供的一种通信网络系统架构图,该通信网络系统为通用移动通信技术的LTE系统,该LTE系统包括依次通讯连接的UE(UserEquipment,用户设备)201,E-UTRAN(EvolvedUMTS Terrestrial Radio AccessNetwork,演进式UMTS陆地无线接入网)202,EPC(EvolvedPacket Core,演进式分组核心网)203和运营商的IP业务204。
具体地,UE201可以是上述终端100,此处不再赘述。
E-UTRAN202包括eNodeB2021和其它eNodeB2022等。其中,eNodeB2021可以通过回程(backhaul)(例如X2接口)与其它eNodeB2022连接,eNodeB2021连接到EPC203,eNodeB2021可以提供UE201到EPC203的接入。
EPC203可以包括MME(MobilityManagement Entity,移动性管理实体)2031,HSS(Home Subscriber Server,归属用户服务器)2032,其它MME2033,SGW(Serving Gate Way,服务网关)2034,PGW(PDN Gate Way,分组数据网络网关)2035和PCRF(Policy andCharging Rules Function,政策和资费功能实体)2036等。其中,MME2031是处理UE201和EPC203之间信令的控制节点,提供承载和连接管理。HSS2032用于提供一些寄存器来管理诸如归属位置寄存器(图中未示)之类的功能,并且保存有一些有关服务特征、数据速率等用户专用的信息。所有用户数据都可以通过SGW2034进行发送,PGW2035可以提供UE 201的IP地址分配以及其它功能,PCRF2036是业务数据流和IP承载资源的策略与计费控制策略决策点,它为策略与计费执行功能单元(图中未示)选择及提供可用的策略和计费控制决策。
IP业务204可以包括因特网、内联网、IMS(IP Multimedia Subsystem,IP多媒体子系统)或其它IP业务等。
虽然上述以LTE系统为例进行了介绍,但本领域技术人员应当知晓,本发明不仅仅适用于LTE系统,也可以适用于其他无线通信系统,例如GSM、CDMA2000、WCDMA、TD-SCDMA以及未来新的网络系统等,此处不做限定。
基于上述移动终端硬件结构以及通信网络系统,提出本发明方法各个实施例。
本发明第一实施例提供一种基于消费队列的消费方法,应用于如图3所示的终端10中。其中,终端10可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(Personal Digital Assistant,PDA)、便捷式媒体播放器(Portable MediaPlayer,PMP)、导航装置、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字TV、台式计算机等固定终端。
本发明在现有消费队列系统的基础上,保证消费者端对每一消费消息的成功消费,而不用去考虑消费者端所需要的消费消息数量,也不考虑生产者端利用怎样的策略向消息队列发送消息,也不用考虑宕机所带来的潜在风险。也就是说,本发明在各种情况下,均可由消费者端直接面对各个消费队列的实际情况,自动实现对各个消费信息的成功消费。
具体的,如图4所示,该基于消费队列的消费方法包括:
S401、从Redis远程字典服务器的消费队列中获取当前消费信息;
其中,Redis(REmote DIctionary Server,远程字典服务器)是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
本例中,生产者端首先将消费信息发送给Redis,Redis按照该消费信息的预设写入位置将该消费信息写入对应的消费队列中。
消费者端,即图3所示的终端,根据当前应用程序的消费需要,向Redis发送读消息请求,从Redis的消费队列中获取当前消费信息。
S402、监控所述当前消费信息的消费情况,当所述当前消费信息处理失败后,向Redis返回消费失败信息,以便Redis将所述当前消费信息重新列入所述消费队列中。
本步骤中,消费终端获取当前消费信息后,对当前消费信息的消费情况进行监控,若当前消费信息处理失败(例如,消费终端因当前消费信息不正确,停止对当前消费信息的消费,或者,当前消费信息未通过认证,即当前消费信息的消费不正确。),则消费终端向Redis返回消费失败信息,以便Redis将当前消费信息重新列入所述消费队列中,进行再次消费,直到该当前消费信息被消费终端成功消费为止。
本发明提供的基于消费队列的消费方法,通过Redis中的消费队列存储各个消费信息,消费终端对每个消费信息的消费情况进行监控,当有消费信息消费失败时,向Redis返回消费失败信息,Redis将消费失败的信息重新列入消费队列中,再次进行消费处理,直至该消费信息处理成功为止。能避免对处理失败的消费信息的遗漏,保证对每个消费信息的成功消费。
图5为本发明另一实施例提供的一种基于消费队列的消费方法,如图5所示,该方法包括:
S501、消费终端向Redis发送读消息请求。
消费终端需要获取消费信息进行处理时,会构造一个读消息请求发送到Redis消费队列的读队列接口,其中,所述读消息请求中会携带待读取当前消费消息所属消费队列的读取标识。
S502、Redis从消费队列中提取终端请求的当前消费信息,并将所述当前消费信息发送给终端。
其中,实现所述消费队列的装置可以包括写队列接口、读队列接口和消息处理器。
本实施例中,写队列接口适于接收消息生产者的写消息请求,所述写消息请求中包括待写入消息和所述待写入消息所属消费队列的读取标识。
在计算机通信领域,消息生产者一般指的是消费终端的一个应用程序,该应用程序通常需要与另外一个应用程序即消息消费者进行信息交互,这种信息交互通常是通过消息的传递来实现的,而消费队列是在消息的传输过程中保存消息的容器,消费队列的主要目的是提供路由并保证消息的正确传递。消息生产者创建一个消息后,可以构建一个写消息请求,并将所述写消息请求发送到所述写队列接口。一个消费队列通常对应一对消息生产者和消息消费者,因此,为区分不同消息生产者所创建的消息,所述写消息请求中除了携带待写入消息之外,还会携带待写入消息所属的消费队列的写入标识。
消息处理器检测到读队列接口中有读消息请求到达后,对所述读消息请求进行解析,获取其包括的待读取消息所属消费队列的读取标识,然后,根据消费队列标识与存储表的对应关系,从与读标识对应的存储表中顺序读取一条消费信息,并将读取到的消费信息通过所述读队列接口发送到消费终端。
在本发明实施例中,每个消费队列对应一个存储表List,List的每条数据记录对应一条消费消息,消息处理器检测到写队列接口中有写消息请求到达后,对所述写消息请求进行解析,获取其包括的待写入消息和所述待写入消息所属消费队列的读取标识,然后,根据消费队列标识与存储表的对应关系,将待写入消息存储到与所述读取标识对应的存储表中。其中,所述对应关系可以预先建立并存储在所述实现消费队列的装置中。
这样,通过引入Redis中的List作为消费队列的存储模块,利用List的存储能力,就使得消费队列能够支持较大消息的存储和传递,并提升了消费队列存储的可靠性和可扩展性。
可选地,本发明实施例的实现消息队列的装置还包括对应关系建立器,适于建立消息队列标识与List中存储表的对应关系。例如,消息生产者和消息消费者之间需要发起通信时,可以由所述对应关系建立器在List中创建一个存储表,并在所述对应关系中增加一个记录项,该记录项记录了这对消息生产者和消息消费者所需要使用的消息队列与所创建的存储表的对应关系。
S503、消费终端接收Redis发送的当前消费信息,确定当前消费信息是否消费成功。
本步骤中,消费终端获取当前消费信息后,对当前消费信息的消费情况进行监控,确定当前消费信息是否消费成功。根据当前消费信息消费情况选择执行步骤S504~S505或步骤S506~S507。
S504、消费终端确认当前消费信息处理成功后,向Redis返回消费成功信息。
S505、Redis接收到终端返回的消费成功信息时,根据所述读消息请求从消费队列中删除所述当前消费信息。
可选的,本步骤中,Redis接收到消费成功信息时,还可以确定是否将当前消费消息从存储表中删除。具体地,所述读消息请求中还可以包括是否删除读取到的消息的删除标识,相应地,所述消息处理器还适于当根据所述删除标识确定需要删除读取到的消息,且从存储表中顺序读取到一条消息后,从所述存储表中删除读取到的消息。
S506、消费终端确认当前消费信息处理失败后,向Redis返回消费失败信息。
S507、Redis接收到终端返回的消费失败信息时,将所述当前消费信息重新列入消费队列中。
具体的,可以根据之前创建的消息队列标识与List存储表的对应关系,将所述当前消费信息重新列入消费队列中;也可以根据当前消费队列、消费信息的消费情况建立所述当前消费信息与List存储表的对应关系,将所述当前消费信息重新列入消费队列中。此后,执行步骤S501至S503,对所述当前消费信息再次进行消费处理,直至所述当前消费信息处理成功为止。
本发明另一实施例还提供一种基于消费队列的消费方法,其与图5所示的方法除步骤S505外,其余步骤都相同。在该实施例中,上述步骤S505被下述步骤S605所替代。
S605、Redis接收到终端返回的消费成功信息时,确定所述终端对应消费区域的消费余量,根据所述消费余量调整所述终端的当前消费速度。
本步骤中,首先,可以将消费队列分为多个消费区域,再根据消费区域的数量、系统开销及具体应用场景设定每个消费区域对应消费终端的数量。
在一种设定方式中,消费终端的数量等于消费队列中的各个消费区域的数量,此时,消费终端与消费区域为一一对应关系,相应地,一个消费终端固定负责消费对应的一个消费区域中的消费信息。该种方式能够最大程度的避免多个消费终端之间相互干扰、以及消费混乱的情况发生。在另一种设定方式中,消费终端的数量单元消费队列中各个消费区域的数量,此时,消费终端与消费区域为多对一的关系,该种方式能够通过多个消费终端同时读取一个消费区域中的消息,从而有效提升消费信息读取过程的可靠性。在其他设定方式中,消费终端的数量小于消费队列中的各个消费区域的数量,此时,消费终端与消费区域可以为一对多的关系,该种方式能够通过一个消费终端读取多个消费区域中的消费信息,能够在消费区域数量较多时有效防止因消费终端数量过多而带来的系统开销增大的问题。
当Redis接收到终端返回的消费成功信息时,将所述当前消费信息标识为已消费信息,根据所述终端对应消费区域的已消费信息确定所述消费区域的消费余量。例如,终端对应消费区域的消费总量为1000条消费信息,统计到当前消费区域已消费信息标识的消费信息有252条,则当前消费区域的消费余量为748条消费信息。
接下来,Redis根据所述消费余量调整所述终端的当前消费速度。
在一种实施方式中,调整方式可以是:判断终端的消费速度与其对应的消费区域的消费余量是否匹配,若判断结果为否,则调整该消费终端的当前消费速度,使之与其对应的消费区域的消费余量匹配。例如,某一消费终端对应消费区域的消费余量小于预设时间段内按照该消费终端的当前消费速度所需的消费量时,将该消费终端的当前消费速度减小为与该消费区域消费余量相匹配的数值;或者,某一消费终端对应消费区域的消费余量大于预设时间段内按照该消费终端的当前消费速度所需的消费量时,将该消费终端的当前消费速度增大为与该消费区域消费余量相匹配的数值。
本实施例中,将消费队列分为多个消费区域,对各个消费区域分配对应的消费终端进行消费,根据终端返回的消费成功信息实时获取终端对应消费区域的消费余量,根据消费区域的消费余量对终端的消费速度进行调整,能有效避免消费失败的现象,提高消费处理的正确性。
基于上述各个方法实施例,提出以下各个装置实施例。
如图6所示为本发明实施例提供的一种基于消费队列的消费终端,本发明中描述的基于消费队列的消费终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(Personal Digital Assistant,PDA)、便捷式媒体播放器(Portable MediaPlayer,PMP)、导航装置、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字TV、台式计算机等固定终端。
如图6所示,该基于消费队列的消费终端包括存储器61和处理器62。
其中,存储器61存储有基于消费队列的消费程序;
处理器62配置为执行基于消费队列的消费程序,以实现以下步骤:
从Redis远程字典服务器的消费队列中获取当前消费信息;
监控所述当前消费信息的消费情况,当所述当前消费信息处理失败后,向Redis返回消费失败信息,以便Redis将所述当前消费信息重新列入所述消费队列中。
在一种具体实施方式中,所述从Redis远程字典服务器的消费队列中获取当前消费信息步骤之后,所述处理器还用于执行基于消费队列的消费程序,以实现以下步骤:
当所述当前消费信息处理成功后,向Redis返回消费成功信息,以便Redis根据所述消费成功信息调整终端的消费速度。
在一种具体实施方式中,所述从Redis远程字典服务器的消费队列中获取当前消费信息步骤中,所述处理器还用于执行基于消费队列的消费程序,以实现以下步骤:
向Redis发送读消息请求,所述读消息请求中包含待读取当前消费消息所属消费队列的读取标识;
接收Redis返回的当前消息信息。
在一种具体实施方式中,所述从Redis远程字典服务器的消费队列中获取当前消费信息步骤之后,所述处理器还用于执行基于消费队列的消费程序,以实现以下步骤:
当所述当前消费信息处理成功后,向Redis返回消费成功信息,以便Redis根据所述读消息请求从消费队列中删除所述当前消费信息。
本发明另一方面还提供一种基于消费队列的消费服务器,所述服务器具体为Redis远程字典服务器。如图7所示,该基于消费队列的消费服务器包括:存储器71和处理器72。
其中,存储器71存储有基于消费队列的消费程序。
处理器72配置为执行基于消费队列的消费程序,以实现以下步骤:
从消费队列中提取终端请求的当前消费信息,并将所述当前消费信息发送给终端;
当接收到终端返回的消费失败信息时,将所述当前消费信息重新列入所述消费队列中。
在一种实施方式中,所述从消费队列中提取终端请求的当前消费信息,并将所述当前消费信息发送给终端步骤之后,所述处理器还用于执行基于消费队列的消费程序,以实现以下步骤:
当接收到终端返回的消费成功信息时,根据所述消费成功信息调整终端的当前消费速度。
在一种具体的实施方式中,所述消费队列包含多个消费区域;
所述根据所述消费成功信息调整终端的当前消费速度步骤中,所述处理器还用于执行基于消费队列的消费程序,以实现以下步骤:
将所述当前消费信息标识为已消费信息,根据所述终端对应消费区域的已消费信息确定所述消费区域的消费余量。
当所述消费区域的消费余量不等于预设时间段内按照所述终端的当前消费速度所需的消费量时,调整所述终端的当前消费速度。
在一种实施方式中,所述从消费队列中提取终端请求的当前消费信息,并将所述当前消费信息发送给终端步骤之后,所述处理器还用于执行基于消费队列的消费程序,以实现以下步骤:
当接收到终端返回的消费成功信息时,根据终端发送的读消息请求从消费队列中删除所述当前消费信息。
基于上述各实施例,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现以下步骤:
从Redis远程字典服务器的消费队列中获取当前消费信息;
监控所述当前消费信息的消费情况,当所述当前消费信息处理失败后,向Redis返回消费失败信息,以便Redis将所述当前消费信息重新列入所述消费队列中。
在一种具体实施方式中,所述从Redis远程字典服务器的消费队列中获取当前消费信息步骤之后,所述一个或者多个程序还可被所述一个或者多个处理器执行,以实现以下步骤:
当所述当前消费信息处理成功后,向Redis返回消费成功信息,以便Redis根据所述消费成功信息调整终端的消费速度。
在一种具体实施方式中,所述从Redis远程字典服务器的消费队列中获取当前消费信息步骤中,所述一个或者多个程序还可被所述一个或者多个处理器执行,以实现以下步骤:
向Redis发送读消息请求,所述读消息请求中包含待读取当前消费消息所属消费队列的读取标识;
接收Redis返回的当前消息信息。
在一种具体实施方式中,所述从Redis远程字典服务器的消费队列中获取当前消费信息步骤之后,所述一个或者多个程序还可被所述一个或者多个处理器执行,以实现以下步骤:
当所述当前消费信息处理成功后,向Redis返回消费成功信息,以便Redis根据所述读消息请求从消费队列中删除所述当前消费信息。
本发明另一方面还提供另一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现以下步骤:
从消费队列中提取终端请求的当前消费信息,并将所述当前消费信息发送给终端;
当接收到终端返回的消费失败信息时,将所述当前消费信息重新列入所述消费队列中。
在一种实施方式中,所述从消费队列中提取终端请求的当前消费信息,并将所述当前消费信息发送给终端步骤之后,所述一个或者多个程序还可被所述一个或者多个处理器执行,以实现以下步骤:
当接收到终端返回的消费成功信息时,根据所述消费成功信息调整终端的当前消费速度。
在一种具体的实施方式中,所述消费队列包含多个消费区域;
所述根据所述消费成功信息调整终端的当前消费速度步骤中,所述一个或者多个程序还可被所述一个或者多个处理器执行,以实现以下步骤:
将所述当前消费信息标识为已消费信息,根据所述终端对应消费区域的已消费信息确定所述消费区域的消费余量。
当所述消费区域的消费余量不等于预设时间段内按照所述终端的当前消费速度所需的消费量时,调整所述终端的当前消费速度。
在一种实施方式中,所述从消费队列中提取终端请求的当前消费信息,并将所述当前消费信息发送给终端步骤之后,所述一个或者多个程序还可被所述一个或者多个处理器执行,以实现以下步骤:
当接收到终端返回的消费成功信息时,根据终端发送的读消息请求从消费队列中删除所述当前消费信息。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
Claims (10)
1.一种基于消费队列的消费方法,其特征在于,所述基于消费队列的消费方法包括:
从Redis远程字典服务器的消费队列中获取当前消费信息;
监控所述当前消费信息的消费情况,当所述当前消费信息处理失败后,向Redis返回消费失败信息,以便Redis将所述当前消费信息重新列入所述消费队列中。
2.根据权利要求1所述的基于消费队列的消费方法,其特征在于,所述方法还包括:
当所述当前消费信息处理成功后,向Redis返回消费成功信息,以便Redis根据所述消费成功信息调整终端的消费速度。
3.根据权利要求2所述的基于消费队列的消费方法,其特征在于,所述Redis根据所述消费成功信息调整终端的消费速度包括:
Redis接收到终端返回的消费成功信息时,确定所述终端对应消费区域的消费余量,根据所述消费余量调整所述终端的当前消费速度。
4.根据权利要求1所述的基于消费队列的消费方法,其特征在于,所述方法还包括:
当所述当前消费信息处理成功后,向Redis返回消费成功信息,以便Redis根据所述读消息请求从消费队列中删除所述当前消费信息。
5.根据权利要求1-4中任一所述的基于消费队列的消费方法,其特征在于,所述从Redis的消费队列中获取当前消费信息包括:
向Redis发送读消息请求,所述读消息请求中包含待读取当前消费消息所属消费队列的读取标识;
接收Redis返回的当前消息信息。
6.一种基于消费队列的消费终端,其特征在于,所述基于消费队列的消费终端包括:处理器,存储有基于消费队列的消费程序的存储器;
所述处理器,用于执行存储器中存储的基于消费队列的消费程序,以实现以下步骤:
从Redis远程字典服务器的消费队列中获取当前消费信息;
监控所述当前消费信息的消费情况,当所述当前消费信息处理失败后,向Redis返回消费失败信息,以便Redis将所述当前消费信息重新列入所述消费队列中。
7.根据权利要求6所述的基于消费队列的消费终端,其特征在于,所述当所述当前消费信息处理失败后,向Redis返回消费失败信息,以便Redis将所述当前消费信息重新列入所述消费队列中步骤之后,所述处理器还用于执行所述基于消费队列的消费程序,以实现以下步骤:
当所述当前消费信息处理成功后,向Redis返回消费成功信息,以便Redis根据所述消费成功信息调整终端的消费速度。
8.根据权利要求6所述的基于消费队列的消费终端,其特征在于,所述当所述当前消费信息处理失败后,向Redis返回消费失败信息,以便Redis将所述当前消费信息重新列入所述消费队列中步骤之后,所述处理器还用于执行所述基于消费队列的消费程序,以实现以下步骤:
当所述当前消费信息处理成功后,向Redis返回消费成功信息,以便Redis根据所述读消息请求从消费队列中删除所述当前消费信息。
9.根据权利要求6-8任一所述的基于消费队列的消费终端,其特征在于,所述从Redis的消费队列中获取当前消费信息步骤中,所述处理器还用于执行所述基于消费队列的消费程序,以实现以下步骤:
向Redis发送读消息请求,所述读消息请求中包含待读取当前消费消息所属消费队列的读取标识;
接收Redis返回的当前消息信息。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有基于消费队列的消费程序,所述基于消费队列的消费程序被处理器执行时实现如权利要求1至4中任一项所述的基于消费队列的消费方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710370175.5A CN107197017A (zh) | 2017-05-23 | 2017-05-23 | 一种基于消费队列的消费方法、终端及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710370175.5A CN107197017A (zh) | 2017-05-23 | 2017-05-23 | 一种基于消费队列的消费方法、终端及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107197017A true CN107197017A (zh) | 2017-09-22 |
Family
ID=59874723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710370175.5A Pending CN107197017A (zh) | 2017-05-23 | 2017-05-23 | 一种基于消费队列的消费方法、终端及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107197017A (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108184141A (zh) * | 2017-11-22 | 2018-06-19 | 链家网(北京)科技有限公司 | 一种监控视频任务的处理方法及服务器 |
CN108196961A (zh) * | 2017-12-28 | 2018-06-22 | 广东蜂助手网络技术股份有限公司 | 一种异步消息处理方法、终端、系统及存储介质 |
CN108429789A (zh) * | 2018-02-02 | 2018-08-21 | 广州云印信息科技有限公司 | 一种基于自动售货机的移动无线网络通信系统及方法 |
CN109117115A (zh) * | 2018-07-16 | 2019-01-01 | 精硕科技(北京)股份有限公司 | 数据运算调度处理方法及装置、存储介质、处理器 |
CN109670952A (zh) * | 2018-12-12 | 2019-04-23 | 中国对外经济贸易信托有限公司 | 一种代收付交易平台 |
CN110213120A (zh) * | 2019-04-24 | 2019-09-06 | 深圳智链物联科技有限公司 | 一种消息中间件的压测方法、装置及终端设备 |
CN110443638A (zh) * | 2019-07-16 | 2019-11-12 | 广州微米物联网科技有限公司 | 一种基于运动场所的智能售货机信息管理方法及系统 |
CN110515748A (zh) * | 2019-08-28 | 2019-11-29 | 腾讯科技(深圳)有限公司 | 一种消息处理的方法及相关装置 |
CN110740103A (zh) * | 2019-09-02 | 2020-01-31 | 深圳壹账通智能科技有限公司 | 业务请求处理方法、装置、计算机设备和存储介质 |
CN110768873A (zh) * | 2019-10-31 | 2020-02-07 | 广州酷旅旅行社有限公司 | 分布式心跳检测方法、系统、装置和计算机设备 |
CN111381987A (zh) * | 2020-03-13 | 2020-07-07 | 北京金山云网络技术有限公司 | 一种消息处理方法、装置、电子设备及介质 |
WO2020140661A1 (zh) * | 2019-01-04 | 2020-07-09 | 深圳壹账通智能科技有限公司 | 数据同步方法和系统 |
CN112804298A (zh) * | 2020-12-29 | 2021-05-14 | 杭州涂鸦信息技术有限公司 | 减少跨区流量的方法、装置、计算机设备和可读存储介质 |
CN115174682A (zh) * | 2022-06-17 | 2022-10-11 | 中国银联股份有限公司 | 数据分流方法、系统、中心、装置及计算机可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105868033A (zh) * | 2016-04-06 | 2016-08-17 | 江苏物联网研究发展中心 | 基于Redis实现优先级消息队列的方法及系统 |
CN106598760A (zh) * | 2016-12-19 | 2017-04-26 | 北京奇虎科技有限公司 | 消息队列的消费方法及装置 |
-
2017
- 2017-05-23 CN CN201710370175.5A patent/CN107197017A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105868033A (zh) * | 2016-04-06 | 2016-08-17 | 江苏物联网研究发展中心 | 基于Redis实现优先级消息队列的方法及系统 |
CN106598760A (zh) * | 2016-12-19 | 2017-04-26 | 北京奇虎科技有限公司 | 消息队列的消费方法及装置 |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108184141A (zh) * | 2017-11-22 | 2018-06-19 | 链家网(北京)科技有限公司 | 一种监控视频任务的处理方法及服务器 |
CN108184141B (zh) * | 2017-11-22 | 2020-07-24 | 贝壳找房(北京)科技有限公司 | 一种监控视频任务的处理方法及服务器 |
CN108196961B (zh) * | 2017-12-28 | 2020-05-12 | 蜂助手股份有限公司 | 一种异步消息处理方法、终端、系统及存储介质 |
CN108196961A (zh) * | 2017-12-28 | 2018-06-22 | 广东蜂助手网络技术股份有限公司 | 一种异步消息处理方法、终端、系统及存储介质 |
CN108429789A (zh) * | 2018-02-02 | 2018-08-21 | 广州云印信息科技有限公司 | 一种基于自动售货机的移动无线网络通信系统及方法 |
CN109117115A (zh) * | 2018-07-16 | 2019-01-01 | 精硕科技(北京)股份有限公司 | 数据运算调度处理方法及装置、存储介质、处理器 |
CN109670952A (zh) * | 2018-12-12 | 2019-04-23 | 中国对外经济贸易信托有限公司 | 一种代收付交易平台 |
CN109670952B (zh) * | 2018-12-12 | 2022-12-23 | 中国对外经济贸易信托有限公司 | 一种代收付交易平台 |
WO2020140661A1 (zh) * | 2019-01-04 | 2020-07-09 | 深圳壹账通智能科技有限公司 | 数据同步方法和系统 |
CN110213120A (zh) * | 2019-04-24 | 2019-09-06 | 深圳智链物联科技有限公司 | 一种消息中间件的压测方法、装置及终端设备 |
CN110213120B (zh) * | 2019-04-24 | 2020-12-04 | 深圳智链物联科技有限公司 | 一种消息中间件的压测方法、装置及终端设备 |
CN110443638A (zh) * | 2019-07-16 | 2019-11-12 | 广州微米物联网科技有限公司 | 一种基于运动场所的智能售货机信息管理方法及系统 |
CN110515748A (zh) * | 2019-08-28 | 2019-11-29 | 腾讯科技(深圳)有限公司 | 一种消息处理的方法及相关装置 |
CN110740103A (zh) * | 2019-09-02 | 2020-01-31 | 深圳壹账通智能科技有限公司 | 业务请求处理方法、装置、计算机设备和存储介质 |
CN110768873A (zh) * | 2019-10-31 | 2020-02-07 | 广州酷旅旅行社有限公司 | 分布式心跳检测方法、系统、装置和计算机设备 |
CN110768873B (zh) * | 2019-10-31 | 2021-08-10 | 广州酷旅旅行社有限公司 | 分布式心跳检测方法、系统、装置和计算机设备 |
CN111381987A (zh) * | 2020-03-13 | 2020-07-07 | 北京金山云网络技术有限公司 | 一种消息处理方法、装置、电子设备及介质 |
WO2021180025A1 (zh) * | 2020-03-13 | 2021-09-16 | 北京金山云网络技术有限公司 | 一种消息处理方法、装置、电子设备及介质 |
CN112804298A (zh) * | 2020-12-29 | 2021-05-14 | 杭州涂鸦信息技术有限公司 | 减少跨区流量的方法、装置、计算机设备和可读存储介质 |
CN112804298B (zh) * | 2020-12-29 | 2023-05-02 | 杭州涂鸦信息技术有限公司 | 减少跨区流量的方法、装置、计算机设备和可读存储介质 |
CN115174682A (zh) * | 2022-06-17 | 2022-10-11 | 中国银联股份有限公司 | 数据分流方法、系统、中心、装置及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107197017A (zh) | 一种基于消费队列的消费方法、终端及计算机可读存储介质 | |
CN107133092A (zh) | 多线程同步处理方法、终端及计算机可读存储介质 | |
CN107193889A (zh) | 广告拦截方法、终端及计算机可读存储介质 | |
CN108762876A (zh) | 一种输入法切换方法、移动终端以及计算机存储介质 | |
CN107436779A (zh) | 一种应用程序管理方法、设备及计算机可读存储介质 | |
CN107340833A (zh) | 终端温度控制方法、终端及计算机可读存储介质 | |
CN107133302A (zh) | 实现数据一致性的方法、系统、终端及计算机可读存储介质 | |
CN107222537A (zh) | 推送消息的方法、移动终端和存储介质 | |
CN108600330A (zh) | 离线消息推送方法、设备及计算机可读存储介质 | |
CN107181700A (zh) | 移动终端应用程序的控制方法、移动终端及存储介质 | |
CN107807767A (zh) | 一种通讯业务的处理方法、终端及计算机可读存储介质 | |
CN108021698A (zh) | 存储文件的删除方法、装置和计算机存储介质 | |
CN106953989A (zh) | 来电提醒方法及装置、终端、计算机可读存储介质 | |
CN107347011A (zh) | 一种群组消息处理方法、设备及计算机可读存储介质 | |
CN107104886A (zh) | 一种信息标示方法、设备及计算机可读存储介质 | |
CN107181865A (zh) | 未读短信的处理方法、终端及计算机可读存储介质 | |
CN107133151A (zh) | 一种日志数据处理方法、设备以及计算机可读存储介质 | |
CN110180181A (zh) | 精彩时刻视频的截图方法、装置及计算机可读存储介质 | |
CN107124466A (zh) | 一种防止缓存穿透方法及装置、计算机可读存储介质 | |
CN108762631A (zh) | 一种移动终端控制方法、移动终端及计算机可读存储介质 | |
CN108600325A (zh) | 一种推送内容的确定方法、服务器和计算机可读存储介质 | |
CN107135086A (zh) | 一种广播推送方法及设备、计算机可读存储介质 | |
CN107678625A (zh) | 信息分享菜单显示方法、移动终端及计算机可读存储介质 | |
CN107229410A (zh) | 交互操作方法、移动终端及计算机可读存储介质 | |
CN107273433A (zh) | 一种文件扫描方法、设备及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170922 |
|
RJ01 | Rejection of invention patent application after publication |