信息提示方法、信息提示装置、服务器及可读存储介质与流程

文档序号:17476578发布日期:2019-04-20 06:09阅读:168来源:国知局
信息提示方法、信息提示装置、服务器及可读存储介质与流程

本发明涉及信息处理技术领域,特别是涉及一种信息提示方法、信息提示装置、服务器及可读存储介质。



背景技术:

随着社会的不断发展,信息对于人们的日常生活越来越重要。在当今市场经济蓬勃发展的当下,如果获知一定的信息提示,那么就可以规避很多风险。以股票市场为例,其作为金融市场的重要组成部分,自身蕴藏着巨大的风险。当股票市场出现剧烈震荡的时候,其对用户的资金安全会造成极大的威胁。

为了避免上述风险,通常采取信息提示的方式。现有技术通常采取轮询的方式查询数据是否发生变换,以向用户进行提示。采用这种方式所实现的提示的及时性取决于轮询的间隔。如果轮询的时间间隔长(例如,15分钟、30分钟等),数据已经发生了变化,则此时再向用户进行通知,其意义已经不大了。

由此可见,现有技术因为采取了轮询提示的方式而存在信息提示及时性差的缺陷。



技术实现要素:

本发明实施例的目的在于提供一种信息提示方法,以解决如何提高提示及时性的技术问题。此外,本发明实施例还提供一种信息提示装置、服务器及可读存储介质。

为了实现上述目的,根据本发明的第一方面,提供了以下技术方案:

一种信息提示方法,所述方法应用于服务器,所述服务器与终端通信连接;所述方法包括:

获取标的的待提示数据和信息提示条件;

计算下列数值:标的的待提示数据在第一时间本次变化前后的数值之差,以及所述标的的所述待提示数据在所述第一时间本次变化后的所述数值与在第二时间最终次变化后的数值之差,再比上所述标的的所述待提示数据在所述第二时间最终次变化后的所述数值;

如果计算结果满足所述信息提示条件,则基于所述计算结果,生成提示信息;

基于线程池,将所述提示信息发送至所述终端。

进一步地,所述获取标的的待提示数据的步骤,具体包括:

通过第一线程将所述标的的所述待提示数据发送至消息队列;

通过第二线程从所述消息队列中获取所述标的的所述待提示数据。

进一步地,所述服务器与所述终端之间的通信连接为长连接;

所述基于线程池,将所述提示信息发送至所述终端的步骤,具体包括:

通过第三线程将所述提示信息发送至消息队列;

通过第四线程从所述消息队列中读取所述提示信息;

基于长连接,将所述提示信息发送至所述终端。

进一步地,所述基于线程池,将所述提示信息发送至所述终端的步骤,具体包括:

根据所述提示信息的延迟情况和/或所述标的的所述待提示数据的变化情况和/或所述信息提示条件,调整所述线程池中线程的数量。

为了实现上述目的,根据本发明的第二方面,还提供了以下技术方案:

一种信息提示装置,所述装置应用于服务器,所述服务器与终端通信连接;所述装置包括:

获取模块,用于获取标的的待提示数据和信息提示条件;

计算模块,用于计算下列数值:标的的待提示数据在第一时间本次变化前后的数值之差,以及所述标的的所述待提示数据在所述第一时间本次变化后的所述数值与在第二时间最终次变化后的数值之差,再比上所述标的的所述待提示数据在所述第二时间最终次变化后的所述数值;

生成模块,用于当计算结果满足所述信息提示条件时,基于所述计算结果,生成提示信息;

发送模块,用于基于线程池,将所述提示信息发送至所述终端。

进一步地,所述获取模块具体用于:

通过第一线程将所述标的的所述待提示数据发送至消息队列;

通过第二线程从所述消息队列中获取所述标的的所述待提示数据。

进一步地,所述服务器与所述终端之间的通信连接为长连接;

所述发送模块具体用于:

通过第三线程将所述提示信息发送至消息队列;

通过第四线程从所述消息队列中读取所述提示信息;

基于长连接,将所述提示信息发送至所述终端。

进一步地,所述发送模块具体还用于:

根据所述提示信息的延迟情况和/或所述标的的所述待提示数据的变化情况和/或所述信息提示条件,调整所述线程池中线程的数量。

为了实现上述目的,根据本发明的第三方面,还提供了以下技术方案:

一种服务器,其包括处理器和存储器;其中:

所述存储器,用于存放计算机程序;

所述处理器,用于执行所述存储器上所存放的程序时,实现本发明第一方面所述的方法步骤。

为了实现上述目的,根据本发明的第四方面,还提供了以下技术方案:

一种计算机可读存储介质,其中,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现本发明第一方面所述的方法步骤。

本发明实施例提供一种信息提示方法、信息提示装置、服务器及可读存储介质。其中,该信息提示方法应用于服务器,服务器与终端通信连接;方法包括:获取标的的待提示数据和信息提示条件;计算下列数值:标的的待提示数据在第一时间本次变化前后的数值之差,以及标的的待提示数据在第一时间本次变化后的数值与在第二时间最终次变化后的数值之差,再比上标的的待提示数据在第二时间最终次变化后的数值;如果计算结果满足信息提示条件,则基于计算结果,生成提示信息;基于线程池,将提示信息发送至终端。

本发明实施例通过采用线程池,可以及时地根据标的的待提示数据和信息提示条件生成提示信息并将该提示信息及时地发送至终端,从而提高了提示及时性,可以将数据的变化或波动情况及时、准确地通知给用户,可以将数据发生变化或波动的时间与用户接收到通知的平局时间差控制在1秒内;由于提示信息发送得及时,则该提示信息所承载的数据内容也是及时的,因而可以过滤掉过期的数据,从而避免了数据干扰;而且,通过信息提示条件的设置,可以实现用户自定义提示频率,由此提高了用户体验度。

为了能更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为让本发明的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而得以体现。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为根据本发明实施例的信息提示方法的应用环境示意图;

图2为根据本发明实施例的信息提示方法的流程示意图;

图3为根据本发明实施例的信息提示装置的结构示意图。

具体实施方式

下面通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本发明,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目个方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。

还需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。

另外,在以下描述中,提供具体细节是为了便于透彻理解实例。然而,所属领域的技术人员将理解,可在没有这些特定细节的情况下实践所述方面。

下面对本发明提供的提示方法实施例的应用环境进行简要介绍。

请参考图1,其中示例性示出了本发明实施例提供的提示方法的应用环境示意图。图1中示出了终端1、通信链路2和服务器3。其中,终端1通过通信链路2与服务器3进行通信。

上述终端1包括但不限于智能手机、平板电脑、膝上型计算机、电子阅读器、车载设备、台式计算机、智能电视机、工控机、可穿戴设备、虚拟现实设备等。

上述通信链路可以为直接通信链路,也可以为经由云端(例如:阿里云、腾讯云、百度云等)等进行通信的间接通信链路。

上述服务器3可以等同替换为服务器集群或云端。该服务器集群可以包括应用服务器、数据库服务器、接口服务器等。该云端可视为资源池。

为了解决如何提高提示及时性的技术问题,本发明实施例提供一种信息提示方法。该方法应用于服务器,该服务器与终端通信连接。如图2所示,该方法主要包括:步骤s200至步骤s230。其中:

s200:获取标的的待提示数据和信息提示条件。

其中,标的例如可以为期货、正股等。该标的可以是不同范畴、不同类别或不同领域内的。以股票标的为例,可以是美股市场的标的,也可以是港股市场的标的。

该标的的待提示数据例如可以为股票行情数据、股票交易数据、期货行情数据等,但绝不限于此。

在本步骤中,信息提示条件可以是用户设置的,也可以是默认的。举例来说,信息提示条件可以为阿里巴巴股票价格涨幅大于5%;当然,绝不限于此,该信息提示条件还可以为公园游人数量达到一千人等。通过用户对该信息提示条件的自选设置,实现了用户自定义提示频率的技术效果,从而可以提高用户的体验度。

具体地,本步骤可以包括:

s201:通过第一线程将标的的待提示数据发送至消息队列;

s202:通过第二线程从消息队列中获取标的的待提示数据。

在本实施例中,通过消息队列,可以在第一线程与第二线程之间,实现生产者-消费者模式的通信。其中,该消息队列可以通过缓冲区来实现。利用该消息队列可以实现第一线程与第二线程之间的解耦,从而可以使得第一线程发送完待提示数据之后,就可以进行下一项任务,而无需等待第二线程的处理,而该第二线程不是从第一线程获取待提示数据,而是从消息队列中获取待提示数据,由此平衡了第一线程与第二线程之间的处理能力,避免了第一线程与第二线程之间的阻塞,进而提高了第一线程的发送速度以及第二线程获取的速度,因而提高了提示及时性。

s210:计算下列数值:标的的待提示数据在第一时间本次变化前后的数值之差,以及标的的待提示数据在第一时间本次变化后的数值与在第二时间最终次变化后的数值之差,再比上标的的待提示数据在第二时间最终次变化后的数值。

其中,第一时间可以是第一日、第一周、第一月等;第二时间可以是第二日、第二周、第二月等。

上述待提示数据可以是随时变化的。这种变化可以是随机的,也可以是有规律的。

在本步骤中,计算任一标的的待提示数据在第n日,本次变化之前的数值与本次变化之后的数值之差,得到第一差值;然后,计算该标的的待提示数据在第n日本次变化之后的数值与在第(n-1)日最终次变化之后的数值之差,得到第二差值;最后,计算该第二差值与该标的的待提示数据在第(n-1)日最终次变化之后的数值之比。其中,n取大于1的自然数。

这里需要说明的是,如果以本次变化之后的数值为当前数值的话,则本次变化之前的数据为前一个数值。

s220:如果计算结果满足信息提示条件,则基于计算结果,生成提示信息。

为了便于理解,下面以具体实施例对本步骤进行详细说明。

以标的为阿里巴巴股票、待提示数据为行情数据为例,在本实施例中,用户设置的信息提示条件为:涨幅高于5%,且提示频率为:一次/一天。

假设:阿里巴巴股票在第(n-1)日的收盘价数据(即最终次变化后的数值)为140(美元),交易所当前成交价数据(即本次变化之后的数值)为148(美元),第n日成交价的变化前的成交价数据(即本次变化之前的数值)为145(美元);则,生成的提示信息为:阿里巴巴(baba)最新价为148、涨幅为5.71%。其中,涨幅数值通过下式:(148-140)/140得到。

在本实施例中,如果信息提示条件可以为阿里巴巴股票价格涨幅大于5%;则提示信息满足该信息提示条件。

s230:基于线程池,将提示信息发送至终端。

本步骤基于线程池,以生产者-消费者的方式将提示信息发送至终端。该线程池可以创建线程并处理“发送提示信息”这项任务。如果待处理的任务数大于线程池中线程的数量,则可以将无法分配线程的任务推送至消息队列中,其他的任务则由线程直接处理完成,由此,提高了任务处理速度,可以更加及时的将提示信息发送至终端。

在一些可选的实施例中,服务器与终端之间的通信连接为长连接;步骤s230具体可以包括:

s231:通过第三线程将提示信息发送至消息队列;

s232:通过第四线程从消息队列中读取提示信息;

s233:基于长连接,将提示信息发送至终端。

在本实施例中,长连接是指在一个连接上可以连续发送多个数据包,在连接保持期间,如果没有数据包发送,需要收发双方发送数据链路检测包。在具体实施过程中,例如,可以通过网络套接字或传输控制协议的套接字来在终端与服务器之间建立长连接,以使得终端与服务器之间可以进行全双工通信。具体地,基于网络套接字,通过终端上的浏览器与服务器之间完成的一次握手,从而可以在终端与服务器之间建立持久的长连接,并进行双向数据传输。

在本实施例中,消息队列可以通过缓冲区来实现。通过该消息缓冲队列,以阻塞队列的方式,在第三线程与第四线程之间实现了生产者-消费者模式的通信。通过这种模式的通信,实现了第三线程与第四线程之间的解耦,从而可以使得第三线程发送完提示信息之后,就可以进行下一项任务,而无需等待第四线程的处理,而该第四线程不是从第三线程获取提示信息,而是从消息队列中获取提示信息,由此平衡了第一线程与第二线程之间的处理能力,避免了第三线程与第四线程之间的阻塞,进而提高了第三线程的发送速度以及第四线程获取的速度,因而提高了提示及时性。

当然,在实际应用中,可以使用多个第三线程将提示信息发送至消息队列;也可以使用多个第四线程从该消息队列中读取该提示信息。这种多线程并发处理的速度比单线程的处理速度更快。

在本实施例中,由于服务器与终端之间建立了长连接;所以,可以及时地将提示信息发送至终端,从而确保了提示信息的实时性。

在一些可选的实施例中,基于线程池,将提示信息发送至终端的步骤,具体包括:

根据提示信息的延迟情况和/或标的的待提示数据的变化情况和/或信息提示条件,调整线程池中线程的数量。

本实施例通过采取该技术方案,实现了实时可伸缩的线程池配置,从而可以实现信息发送的高吞吐以及低延迟的技术效果。

具体地,如果提示信息的延迟超过延迟阈值(例如,1秒),则增大所述线程池中线程的数量。

籍此,可以加大信息处理的并发度来降低延迟。即使面对千万级别的行情消息及用户数量,也能将预警延迟控制在毫秒级别。

综上所述,本发明实施例通过采取上述各个技术方案,通过采用线程池,可以及时地根据标的的待提示数据和信息提示条件生成提示信息并将该提示信息及时地发送至终端,从而提高了提示及时性,可以将数据的变化或波动情况及时、准确地通知给用户,可以将数据发生变化或波动的时间与用户接收到通知的平局时间差控制在1秒内;由于提示信息发送得及时,则该提示信息所承载的数据内容也是及时的,因而可以过滤掉过期的数据,从而避免了数据干扰;而且,通过信息提示条件的设置,可以实现用户自定义提示频率,由此提高了用户体验度。

在上文中,虽然按照上述的顺序描述了信息提示方法实施例中的各个步骤,本领域技术人员应清楚,本发明实施例中的步骤并不必然按照上述顺序执行,其也可以倒序、并行、交叉等其他顺序执行,而且,在上述步骤的基础上,本领域技术人员也可以再加入其他步骤,这些明显变型或等同替换的方式也应包含在本发明的保护范围之内,在此不再赘述。

下面为本发明装置实施例,本发明装置实施例用于执行本发明方法实施例实现的步骤,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明方法实施例。在本发明各个装置实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

为了解决如何提高提示及时性的技术问题,基于与上述信息提示方法实施例相同的技术构思,本发明实施例还提供一种信息提示装置。该装置应用于服务器,服务器与终端通信连接。如图3所示,该信息提示装置主要包括:获取模块31、计算模块32、生成模块33和发送模块34。其中,获取模块31用于获取标的的待提示数据和信息提示条件。计算模块32用于计算下列数值:标的的待提示数据在第一时间本次变化前后的数值之差,以及标的的待提示数据在第一时间本次变化后的数值与在第二时间最终次变化后的数值之差,再比上标的的待提示数据在第二时间最终次变化后的数值。生成模块33用于当计算结果满足信息提示条件时,基于计算结果,生成提示信息。发送模块34用于基于线程池,将提示信息发送至终端。

在一个可选的实施例中,获取模块31具体用于:通过第一线程将标的的待提示数据发送至消息队列;通过第二线程从消息队列中获取标的的待提示数据。

在一个可选的实施例中,服务器与终端之间的通信连接为长连接;该发送模块34具体用于:通过第三线程将提示信息发送至消息队列;通过第四线程从消息队列中读取提示信息;基于长连接,将提示信息发送至终端。

在一个可选的实施例中,该发送模块34具体还用于:根据提示信息的延迟情况和/或标的的待提示数据的变化情况和/或信息提示条件,调整线程池中线程的数量。

有关上述各装置实施例的具体实现过程、解决的问题以及取得的技术效果可以参考前述方法实施例中的相关描述,在此不再赘述。

综上所述,本发明实施例利用获取模块31、计算模块32、生成模块33和发送模块34,通过采用线程池,可以及时地根据通过获取模块31获得的标的的待提示数据和信息提示条件,并利用计算模块32、生成模块33得到提示信息,最后通过发送模块34将该提示信息及时地发送至终端,从而提高了提示及时性,可以将数据的变化或波动情况及时、准确地通知给用户,可以将数据发生变化或波动的时间与用户接收到通知的平局时间差控制在1秒内;由于提示信息发送得及时,则该提示信息所承载的数据内容也是及时的,因而可以过滤掉过期的数据,从而避免了数据干扰;而且,通过信息提示条件的设置,可以实现用户自定义提示频率,由此提高了用户体验度。

基于信息提示方法实施例相同的技术构思,本发明实施例还提供一种服务器,其包括处理器和存储器。其中,存储器用于存放计算机程序。处理器用于执行存储器上所存放的程序时,实现上述信息提示方法实施例所述的方法步骤。

其中,该处理器可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器可以采用dsp(digitalsignalprocessing,数字信号处理)、fpga(fieldprogrammablegatearray,现场可编程门阵列)、pla(programmablelogicarray,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(centralprocessingunit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器可以在集成有gpu(graphicsprocessingunit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器还可以包括ai(artificialintelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。

上述存储器可以包括随机存取存储器(randomaccessmemory,ram),也可以包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

在一些实施例中,该服务器还可选地包括有:外围设备接口和至少一个外围设备。处理器、存储器和外围设备接口之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口相连。

有关本实施例的具体实现过程、解决的问题以及取得的技术效果可以参考前述方法实施例中的相关描述,在此不再赘述。

基于信息提示方法实施例相同的技术构思,本发明实施例还提供一种计算机可读存储介质。其中,该计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现上述信息提示方法实施例所述的方法步骤。

上述计算机可读存储介质可以包括但不限于随机存取存储器(ram)、动态随机存取存储器(dram)、静态随机存取存储器(sram)、只读存储器(rom)、可编程只读存储器(prom)、可擦写可编程只读存储器(eprom)、电可擦写可编程只读存储器(eeprom)、闪存(例如,nor型闪存或nand型闪存)、内容可寻址存储器(cam)、聚合物存储器(例如,铁电聚合物存储器)、相变存储器、双向开关半导体存储器、硅-氧化物-氮化硅-氧化硅-硅(silicon-oxide-nitride-oxide-silicon,sonos)存储器、磁卡或者光卡,亦或是其他任意适当类型的计算机可读存储介质。

有关本实施例的具体实现过程、解决的问题以及取得的技术效果可以参考前述方法实施例中的相关描述,在此不再赘述。

以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

还需要指出的是,在本公开的系统和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。

本说明书中的各个实施例均采用相关的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。可以不脱离由所附权利要求定义的教导的技术而进行对在此所述的技术的各种改变、替换和更改。此外,本公开的权利要求的范围不限于以上所述的处理、机器、制造、事件的组成、手段、方法和动作的具体方面。可以利用与在此所述的相应方面进行基本相同的功能或者实现基本相同的结果的当前存在的或者稍后要开发的处理、机器、制造、事件的组成、手段、方法或动作。因而,所附权利要求包括在其范围内的这样的处理、机器、制造、事件的组成、手段、方法或动作。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1