CN105009097A - 消息发射装置、消息发射方法和消息发射程序 - Google Patents
消息发射装置、消息发射方法和消息发射程序 Download PDFInfo
- Publication number
- CN105009097A CN105009097A CN201480007975.5A CN201480007975A CN105009097A CN 105009097 A CN105009097 A CN 105009097A CN 201480007975 A CN201480007975 A CN 201480007975A CN 105009097 A CN105009097 A CN 105009097A
- Authority
- CN
- China
- Prior art keywords
- message
- terminal
- information processing
- processing terminal
- push 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.)
- Granted
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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- 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/224—Monitoring or handling of messages providing notification on incoming messages, e.g. pushed notifications of received messages
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
为了抑制从推送服务器接收到消息发射请求时到推送消息被发射到终端时的延迟的增加,即使推送服务器负担有负载,例如,这个消息发射设备,其执行关于到终端的消息的发射的处理,执行用于发射触发分组到终端的通知处理,所述触发分组指示存在未发送消息。执行用于发射消息到终端的准备处理。以这样的方式确定通知处理和准备处理被执行的顺序:准备处理已经在从终端接收到作为对触发分组的响应的消息获取请求之前完成。
Description
技术领域
本发明涉及目的在于消息发射的消息发射装置、消息发射方法和消息发射程序。
背景技术
现在,称为推送通知或消息(也被称为推送消息)的推送型事件通知服务已经被广泛使用。
在此,在因特网中使用的WWW(万维网)中,推送型通信允许因特网上的WWW服务器通过来自信息处理终端的触发而开始对信息处理终端的通信(主要是下载),并且推送型通信被排他地使用。另一方面,推送通知的不同之处在于,其通过因特网上服务提供商的服务服务器侧的触发而开始用于信息处理终端的通信(主要是下载)。
推送通知通常用于从服务器装置到信息处理终端的任何通信。例如,具体使用包括符合VoIP(因特网协议语音)的语音通信服务中的信息通信、SNS(社交联网服务)的更新通信等。在推送通知中,通过符合IP(因特网协议)的网络从服务器装置向信息处理终端活动地通知事件。
发射消息的服务器装置(下文被称为“推送服务器”)从服务提供商服务器(下文被简称为“应用(app)服务器”)接收符合VoIP的语音通信服务中的呼入通信、SNS的更新通信、聊天消息分发、云存储的更新通信等的通信请求。这里,应用服务器是由提供服务的服务提供商所使用的服务器装置,诸如SNS管理器。
服务提供商预先向用户提供用于使用服务的应用(下文中简称为“应用”)。用户在由用户使用的诸如蜂窝电话和个人计算机的信息处理终端中安装应用。用户在信息处理终端上操作从服务提供商提供的应用。
另一方面,服务提供商通过使用应用服务器请求推送服务器发射寻址到服务提供商所提供的应用的消息。根据消息发射请求,推送服务器将消息发射到在信息处理终端上进行操作的软件(下文中称为“推送客户端”)。推送客户端将接收到的消息移交到目的地应用。应用执行与从推送客户端接收到的消息的内容相对应的处理。
将参考图1的序列图来继续描述。图1是用于解释在事件通知服务中的过程的流程的序列图。
参考图1,该解释示例包括信息处理终端1000、推送服务器1100、消息数据库1200和应用服务器1300。而且,信息处理终端1000包括应用1001和推送客户端1002。
首先,由应用服务器1300针对推送服务器1100执行对应用1001的消息发射请求(步骤S1401)。
推送服务器1100在消息数据库1200中记录消息(步骤S1402)。此后,推送服务器1100将指示未发射消息的存在的触发分组发射到用作消息的目的地的信息处理终端1000的推送客户端1002(步骤S1403)。
已经接收到触发分组的推送客户端1002将消息获取请求发射到推送服务器1100(步骤S1404)。
已经接收到消息获取请求的推送服务器1100从消息数据库1200获取寻址到信息处理终端1000的消息(步骤S1405)。而且,推送服务器1100将消息发射到推送客户端1002,作为对消息获取请求的响应(步骤S 1406)。
推送客户端1002将接收到的消息移交到应用1001(步骤S1407)。消息对应用1001的发射通过这样的过程结束。
例如,在专利文件1中公开了这样的方案,其中,在完成了在推送服务器中对终端的数据发射准备之后,推送服务器将触发发射到终端,并且已经接收到触发的终端从推送服务器获取数据。
而且,这样的推送服务器的另一示例包括在专利文件2中公开的技术。专利文件2中公开的技术的目的在于,使用推送通知服务在信息分发系统中安全地管理应用于便携终端的标识符。专利文件2中公开的技术通过在在信息分发系统中包括的Web服务器和推送服务器之间的通信中执行加密通信来防止应用于便携终端的标识符的泄露等。
引用列表
专利文件
[专利文件1]日本未经审查公开No.2002-366365
[专利文件2]日本未经审查公开No.2012-230555
非专利文件
[非专利文献1]:3GPP TS25.331:Radio Resource Control(RRC);Protocol specification,[在线],[2013年1月30日检索],因特网http://www.3gpp.org/ftp/Specs/archive/25_series/25.331/
[非专利文献2]:3GPP TS36.331:Evolved Universal TerrestrialRadio Access(E-UTRA);Radio Resource Control(RRC);Protocolspecification,[在线],[2013年1月30日检索],因特网<http://www.3gpp.org/ftp/Specs/archive/36_series/36.331/>
发明内容
技术问题
当使用上述每个技术时,能够从推送服务器侧发射活动消息。但是,完成要被发射到信息处理终端的消息的发射准备并且然后推送服务器发射触发的方案具有问题。问题在于,当已经对推送服务器请求了寻址到多个信息处理终端的消息发射请求时,在推送消息到达终端之前的延迟变大。
这里,各种复合因素导致延迟。具体地,作为当信息处理终端发射消息时的延迟的因素,存在关于在推送服务器和终端之间的通信的延迟以及关于在推送服务器中的处理的延迟这两种。
首先,将描述前者的关于通信的延迟。使用符合诸如W-CDMA(宽带码分多址)、LTE(长期演进)和HSPA(高速分组接入)的标准的无线电通信网络来执行在推送服务器和信息处理终端之间的通信。
在这些标准中,通过用于根据通信情形设置RRC(无线电资源控制)状态的控制来抑制功耗。具体地,当信息处理终端还没有被执行以在恒定时段期间通信时,执行控制以使终端将RRC状态从可通信状态(例如,DCH状态)切换为暂停状态(例如,空闲状态)。
根据信息处理终端的RRC状态,在推送服务器和信息处理终端之间的通信时发生的通信延迟极大不同。
例如,在分组到达终端之前的通信延迟在WCDMA中的DCH状态下或在LTE中的CONN状态下通常为大约几百毫秒。在分组到达终端之前的通信延迟在WCDMA和LTE中的空闲状态下大约为几秒。
此外,关于在这些LTE、W-CDMA和HSPA中的RRC状态的类型以及RRC状态的转变的机制由通信标准的标准化团体建立的3GPP(第三代合作伙伴计划)来规定。在非专利文献1和非专利文献2中具体写出了RRC状态的转变等。而且,由于这些也是本领域技术人员所公知的,所以将省略其详细描述。
接下来,将描述后者的关于在推送服务器中的处理的延迟。
在推送服务器中,消息发射处理被顺序执行。对于平滑处理,多个服务器装置彼此合作。
然而,在请求寻址到多个信息处理终端的消息发射请求并且超过推送服务器的处理能力的情况下,对于寻址到特定信息处理终端的消息发射的处理通过对于寻址到另一信息处理终端的消息发射的处理来保持等待。以该方式,延迟发生在推送服务器中的处理中。此外,推送服务器中的处理的延迟可能几乎与上述通信延迟相同,或者可能等于或大于上述通信延迟。
这里,在用于消息发射的处理期间,特别有必要快速地执行触发分组的发射处理。这是因为,只要没有接收到触发分组,信息处理终端就不向推送服务器发射消息获取请求。随着触发分组的发射处理被延迟,消息的到达也被延迟。
在这方面,考虑在用于消息发射的处理中首先执行触发分组的发射处理,并且以与另一处理相比的高优先级来执行触发分组的发射处理。以该方式,触发分组的发射时间被提前。因此,期望从在推送服务器1100接收消息发射请求时的时间到消息到达信息处理终端的时间所生成的延迟变小。
然而,推送服务器无法在从信息处理器终端接收到消息获取请求之后立即将消息发射到信息处理终端,除非推送服务器完成了对消息发射所需要的另一处理,直到从信息处理终端接收到消息获取请求。例如,消息发射所需要的另一处理是消息到消息数据库的记录处理。推送服务器等待消息发射所需的另一处理的完成,并且然后发射消息。结果,在消息到达终端之前的延迟变大。例如,存在下述情况:当接收到多个消息发射请求时,恒定水平以上的负载被施加到推送服务器。此时,无法完成消息发射所需要的另一处理,直到从信息处理终端接收到消息获取请求才有可能完成消息发射所需的另一处理。
在这方面,本发明的目的在于提供一种消息发射装置、消息发射方法和消息发射程序,通过该消息发射装置、消息发射方法和消息发射程序,即使负载被施加到推送服务器,也能够防止从在推送服务器接收到消息发射请求时的时间到推送服务器将推送消息发射到终端的时间所生成的延迟的增加。
对问题的解决方案
根据本发明的第一方面,一种执行关于对终端的消息发射的处理的消息发射装置,包括:通知部件,配置为执行用于发射触发分组的通知处理,该触发分组指示存在没有发射到终端的消息;准备部件,配置为执行用于将消息发射到终端的准备处理;以及顺序决定部件,配置为决定通知处理和准备处理的执行顺序,使得在从终端接收到消息获取请求作为对所述触发分组的响应之前,结束该准备处理。
根据本发明的第二方面,一种执行关于对终端的消息发射的处理的消息发射方法,包括下述步骤:执行用于发射触发分组的通知处理,该触发分组指示存在没有发射到终端的消息;执行用于将消息发射到终端的准备处理;以及决定通知处理和准备处理的执行顺序,使得在从终端接收到消息获取请求作为对所述触发分组的响应之前,结束该准备处理。
根据本发明的第三方面,一种使得计算机用作消息发射装置的消息发射程序,消息发射装置执行关于对终端的消息发射的处理,并且包括:通知部件,配置为执行用于发射触发分组的通知处理,该触发分组指示存在没有发射到终端的消息;准备部件,配置为执行用于将消息发射到终端的准备处理;以及顺序决定部件,配置为决定通知处理和准备处理的执行顺序,使得在从终端接收到消息获取请求作为对所述触发分组的响应之前,结束该准备处理。
本发明的有益效果
根据本发明,例如,即使负载被施加到推送服务器,也能够防止从在推送服务器接收到消息发射请求时的时间到推送服务器将推送消息发射到终端的时间所生成的延迟的增加。
附图说明
图1是图示通用技术中推送服务器的消息发射处理的流程的序列图。
图2是图示本发明的示例性实施例1中的系统的配置示例的框图。
图3是图示本发明的示例性实施例1中的推送服务器的配置示例的框图。
图4-1是用于解释本发明的每个示例性实施例中的处理时限的计算的概念图。
图4-2是图示本发明的每个示例性实施例中的消息记录处理的处理时限和优先级之间的相关的示例的图。
图5是图示本发明的示例性实施例1中的信息处理终端的配置示例的框图。
图6是图示本发明的示例性实施例1中的操作示例的序列图。
图7是图示本发明的示例性实施例1中的处理调度方法的示例的流程图。
图8是图示本发明的示例性实施例2中的系统的配置示例的框图。
图9是图示本发明的示例性实施例2中的推送服务器的配置示例的框图。
图10是图示本发明的示例性实施例2中的操作示例的序列图。
图11是图示本发明的示例性实施例3中的推送服务器的配置示例的框图。
图12是图示本发明的示例性实施例3中的操作示例的流程图。
具体实施方式
[示例性实施例1]
接下来,参考附图来详细描述本发明的示例性实施例1。
图2是图示说明示例性实施例1的系统配置的框图。参考图2,根据示例性实施例1的系统包括推送服务器100-1到100-n、消息数据库200、信息处理终端300-1到300-m以及应用服务器400-1到400-j。这里,附图标记的结尾的“m”、“n”和“j”中的每一个都是等于或大于1的整数。也就是,推送服务器100的数目、信息处理终端300的数目和应用服务器400的数目不存在特殊限制。
而且,推送服务器100-1到100-n和各个信息处理终端300-1到300-m通过无线电通信网络(未图示)彼此相连。无线电通信网络根据无线电通信方案来实现,其中能够进行RRC状态的切换。这里,例如,能够进行RRC状态的切换的无线电通信方案是诸如在技术问题中描述的LTE、W-CDMA和HSPA的无线电方案。
此外,在下面的描述中,例如,在分组从推送服务器100到达信息处理终端300之前的通信延迟通常是大约几百毫秒的状态,诸如WCDMA中的DCH状态或LTE中的CONN状态,被称为“可通信状态”。另一方面,在分组从推送服务器100到达信息处理终端300的通信延迟通常大约几秒的状态,诸如WCDMA和LTE中的空闲状态,被称为“暂停状态”。
另一方面,不论有线还是无线,推送服务器100-1到100-n和应用服务器400-1到400-j以及推送服务器100-1到100-n和消息数据库200分别经由网络(未图示)在可通信状态下彼此连接。网络可以根据任意方案来实现,并且还可以通过专用线路来实现或者可以使用诸如因特网的公共网络。
推送服务器100-1到100-n接收从应用服务器400到信息处理终端300的消息发射请求,并且执行对用作为目的地的信息处理终端300的消息发射处理。推送服务器100的功能还可以通过一个推送服务器100来实现。然而,在示例性实施例1中,假设通过多个推送服务器100-1到100-n的合作来分发消息发射处理的负载。假设例如从信息处理终端300和应用服务器400到推送服务器100的通信由负载平衡器(负载分发装置)等分配到推送服务器100-1到100n中的任何一个,并且每个推送服务器100的负载被尽可能均衡化。
消息数据库200记录从推送服务器100-1到100-n发射到信息处理终端300-1到300-m的消息。消息数据库200连接到推送服务器100-1到100-n以能够通信,使得能够从任意推送服务器100-1到100-n关于消息数据库200执行消息的记录(写入)和参考(读取)。消息数据库200例如被认为通过RDB(关系数据库)来实现,但是还可以通过诸如KVS(密钥值存储)的另一数据存储方案来实现。
信息处理终端300-1到300-m经由推送服务器100-1到100-n从应用服务器400-1到400-j接收消息。信息处理终端300-1到300-m例如是蜂窝电话、平板终端、个人计算机、数字标牌终端等。
而且,信息处理终端300-1到300-m中的每一个包括推送客户端310以及应用320-1到320-k(k是等于或大于1的整数)。
推送客户端310从推送服务器100-1到100-n接收消息,并且将消息发射到指定为目的地的应用320-1到320-k。应用320-1到320-k例如是由服务提供商提供的应用。
应用服务器400-1到400-j例如是在服务提供商提供服务时使用的服务器。应用服务器400-1到400-j将对在信息处理终端300-1到300-m上进行操作的应用320-1到320-k的消息获取请求发射到推送服务器100-1到100-n。
诸如推送服务器100和应用服务器400的每个服务器还可以通过单独的服务器装置来实现,但是多个服务器的功能还可以通过一个服务器装置来实现。而且,一个服务器的功能还可以通过多个服务器装置的合作来实现。而且,消息数据库200还可以物理地嵌入到推送服务器100中。
随后,将参考图3来给出描述,图3是图示说明示例性实施例1中的推送服务器100的功能框的框图。
如图3中所示,推送服务器100-1到100-n中的每一个包括消息发射请求接收单元101、RRC状态获取单元102、消息记录处理单元103、触发分组发射单元104、处理时限决定单元105、处理优先级决定单元106、处理调度单元107、消息参考单元108和消息发射单元109。
消息发射请求接收单元101从应用服务器400接收对信息处理终端300的消息发射请求。消息发射请求例如包括要被发射的消息、用于标识用作消息发射目的地的信息处理终端300的标识符、以及用于指定通知消息的应用320的标识符。
RRC状态获取单元102获取信息处理终端300的当前RRC状态。信息处理终端300是根据在消息发射请求接收单元101中接收到的消息发射请求而要被发射的消息的目的地。当前RRC状态例如可以从包括在无线电通信网络中的基站(未图示)获取。在该情况下,RRC状态获取单元102向基站发射用于标识用作消息发射目的地的信息处理终端300的标识符和RRC状态的查询请求二者,并且接收用作消息发射目的地的信息处理终端300的当前RRC状态作为其回复。
而且,基于推送服务器和信息处理终端300的通信历史,还能够估计用作消息发射目的地的信息处理终端300的当前RRC状态。例如,已经在过去几秒中与推送服务器进行通信的信息处理终端300的RRC状态是可通信状态(例如,DCH)。而且,在过去几秒或更多时间中还没有执行通信的信息处理终端300的RRC状态可以被估计为暂停状态(例如,空闲)。而且,还可以通过其他方法来获取RRC状态。
消息记录处理单元103执行在消息数据库200中记录消息的处理,该消息被包括在消息发射请求接收单元101中接收的消息发射请求中并且要被发射到信息处理终端300。
触发分组发射单元104将触发分组发射到用作消息发射目的地的信息处理终端300,该触发分组是用于通知由消息发射请求指定的消息没有被发射并且存在于推送服务器中(待机发射)的分组。
处理时限决定单元105基于由RRC状态获取单元102获取的信息处理终端300的RRC状态来决定由消息记录处理单元103执行的处理的处理时限终止时间。这里,假设通过将“对应于信息处理终端300的RRC状态的处理时限”加上“触发分组发射时间”来获得“处理时限终止时间”。也就是,假设“处理时限终止时间等于触发分组发射时间+对应于信息处理终端300的RRC状态的处理时限”。
这里,触发分组发射时间是将触发分组发射到用作消息发射目的地的信息处理终端300的时间。
而且,当用作消息发射目的地的信息处理终端300的状态是暂停状态时,对应于信息处理终端300的RRC状态的处理时限例如具有3秒的值,并且当用作消息发射目的地的信息处理终端300的状态是可通信状态时,对应于信息处理终端300的RRC状态的处理时限例如具有0.1秒的值。
此外,图4-1是图示说明处理时限和处理时限终止时间的概念图。如图4-1中所示,当用作消息发射目的地的信息处理终端300的状态是可通信状态时,处理时限被设置为短,并且当用作为消息发射目的地的信息处理终端300的状态是暂停状态时,处理时限被设置为长。
此外,以上示例的3秒和0.1秒的值仅仅是示例,并且可以根据要符合的通信方案和安装环境来采用任意的值。而且,在示例性实施例1中,信息处理终端300的状态被归类成可通信状态和暂停状态的两种状态,但是其也可以被更精细地归类。例如,当假设状态改变为高速可通信状态、低速可通信状态和暂停状态的三种阶段时,还可以针对这三种状态设置对应于RRC状态的不同处理时限。
处理优先级决定单元106决定由消息记录处理单元103所执行的处理和由触发分组发射单元104所执行的处理的优先级。这里,通过消息记录处理单元103执行的处理是消息记录处理。而且,由触发分组发射单元104执行的处理是触发分组发射处理。此外,消息记录处理对应于本发明的“准备处理”。而且,触发分组发射处理对应于本发明的“通知处理”。
例如,如下决定处理优先级。首先,处理优先级由0到10的整数来表示。而且,在数值大时,优先级高。而且,触发分组发射处理的优先级被假设为预先决定的预定值。例如,中央值被假设为5。此外,根据本示例性实施例的安装环境,触发分组发射处理的优先级还可以被设置为除了5之外的值。另一方面,根据在处理时限终止时间之前的剩余时间来改变消息记录处理的处理优先级。
图4-2是图示说明在消息记录处理的“处理时限终止时间”之前的剩余时间与处理优先级之间的关系的图。如图4-2中所示,当在处理时限终止时间之前的剩余时间短时,处理优先级变高。与触发分组发射处理相比,在处理时限终止时间之前的剩余时间比预定值短的消息记录处理具有高优先级,并且在处理时限终止时间之前的剩余时间比预定值长(在图4-2的示例中为1.5秒)的消息记录处理的优先级比触发分组发射处理低。此外,处理时限终止时间已经经过的消息记录处理的优先级具有最大值。这里,最大值被假设为10。而且,假设对应于RRC状态的处理时限此时最长为3秒。因此,在处理时限终止时间之前的剩余时间最长也是3秒。因此,在处理时限终止时间之前的剩余时间等于或大于3秒的消息记录处理的所有优先级都被假设为0。假设每当在处理时限终止时间之前的剩余时间为3秒整并且然后经过0.3秒时,优先级逐个增加。
处理调度单元107根据由处理优先级决定单元106所决定的优先级来执行由消息记录处理单元103执行的消息记录处理的处理调度以及由触发分组发射单元104执行的触发分组发射处理。具体地,处理调度单元107执行调度,使得具有高处理优先级的处理被优先执行。
消息参考单元108参考消息数据库200获取发射到信息处理终端300的消息。
消息发射单元109将由消息参考单元108获取的消息发射到信息处理终端300。
随后,将参考图5给出描述,图5是图示说明示例性实施例1中的信息处理终端300的功能框的框图。
信息处理终端300包括推送客户端310和应用320-1到320-k。而且,推送客户端310包括触发分组接收单元311、消息接收单元312和消息通知单元313。
触发分组接收单元311接收由推送服务器100的触发分组发射单元104发射的触发分组。
在触发分组接收单元311接收触发分组之后,消息接收单元312将消息获取请求发射到推送服务器100的消息发射单元109。已经接收到消息获取请求的推送服务器100的消息发射单元109发射消息作为对消息获取请求的响应,并且信息处理终端300的消息接收单元312接收该消息。
消息通知单元313向被指定为消息的目的地的应用320通知在消息接收单元312中接收到消息。
应用320-1到320-k是使用消息的应用,并且应用的具体使用和类型可以是任意使用和类型,并且没有具体限制。
迄今为止,已经详细描述了示例性实施例1的每个功能块。此外,图2、图3和图5仅图示说明了与示例性实施例1特别相关的功能块,但是这是为了便于描述。
即,在示例性实施例1中,不希望禁止除了所图示的功能块之外的功能块的存在。例如,推送服务器100、消息数据库200、信息处理终端300和应用服务器400-1到400-j分别在其中或在其外包括诸如通信单元、控制单元和记录单元的功能块(未图示)。而且,每个图示或未图示的功能块还可以仅在示例性实施例1的特定操作中使用,但是也可以在商业上用于其他使用。例如,每个功能块还可以用于除了应用的执行或推送消息的发射/接收以外的分组通信。
接下来,将参考图6的序列图和图7的流程图来描述示例性实施例1的基本操作。
图6是图示说明示例性实施例1的整体操作示例的序列图。在本操作示例中,将为应用服务器400-1发射消息到在信息处理终端300-1上操作的应用320-1的情况提供描述。
初始地,应用服务器400-1将消息发射请求发射到推送服务器100的消息发射请求接收单元101(步骤S11)。
在本操作示例中,假设步骤S11中的消息发射请求由负载平衡器(负载分发装置)分配给推送服务器100-1。也就是,假设已经接收到消息发射请求的推送服务器100是推送服务器100-1。这里,消息发射请求包括用作为消息目的地的信息处理终端300和应用320中每一个的标识符以及消息。在本操作示例中,由于消息目的地是信息处理终端300-1的应用320-1,所以消息发射请求包括指示信息处理终端300-1的标识符和指示应用320-1的标识符。消息发射请求例如通过由HTTP(超文本传输协议)规定的POST方法来发射。
接下来,推送服务器100-1的触发分组发射单元104将触发分组发射到用作消息发射目的地的信息处理终端300-1(步骤S12)。此外,步骤S12的处理在推送服务器100-1的处理调度单元107已经确定了处理应当开始的时间点处执行。
将参考图7来具体描述处理调度单元107的确定。图7是图示说明当执行由处理调度单元107所执行的处理的调度时的操作的示例的流程图。
首先,处理调度单元107检查当前在推送服务器100中没有处理的触发分组发射处理和消息记录处理的处理优先级(步骤S21)。由处理优先级决定单元106来评估每个处理的处理优先级。此外,在处理优先级的评估时,首先计算在消息记录处理的当前时间点直到处理时限终止时间的剩余时间。根据剩余时间来评估处理优先级。这是因为,如上所述,随着处理时限终止时间的接近,消息记录处理的处理优先级变高。另一方面,对于触发分组发射处理,因为优先级是恒定的,所以不需要再次计算优先级。
这里,当触发分组发射处理的处理优先级最大时(步骤S22中为是),触发分组发射单元104执行触发分组发射处理中的一个(步骤S23)。这里,在本操作示例中,触发分组发射处理的处理优先级为5。因此,在步骤S22中为是的情况下,存在下述情况:不存在没有处理的消息记录处理。替代地,即使存在没有处理的消息记录处理,也存在下述情况:存在知道处理时限终止时间的余裕,并且优先级仍然等于或小于4。
此外,当在步骤S23中存在多个触发分组发射处理时,能够任意地决定关于要被执行的触发分组发射处理的参考。例如,考虑执行对应于最长时间之前接收到的消息发射请求的触发分组发射处理。此外,例如,还可以根据作为消息发射请求的发射源的应用服务器400来执行触发分组发射处理。例如,还可以在与除了应用服务器400-1以外的另一应用服务器400的消息发射请求相对应的触发分组发射处理之前优先执行与应用服务器400-1的消息发射请求相对应的触发分组发射处理。而且,类似地,还可以根据作为发射目的地的信息处理终端300来执行触发分组发射处理。
另一方面,当消息记录处理的处理优先级最大时(步骤S22中为否),消息记录处理单元103执行具有最大优先级的消息记录处理的处理(步骤S24)。这里,在本操作示例中,触发分组发射处理的处理优先级为5。因此,在步骤S22中为否的情况下,存在下述情况:不存在没有处理的触发分组发射处理。替代地,即使存在没有处理的触发分组发射处理,与此相独立地,也存在下述情况:不存在直到处理时限终止时间的余裕,并且存在具有等于或大于6的优先级的消息记录处理。此外,在步骤S24中可能存在具有最大优先级的多个消息记录处理。例如,存在下述情况:存在优先级为8的多个消息记录处理。在该情况下,选择要通过等同于上述步骤S23中的基准执行的消息记录处理。而且,当优先级彼此相等时,还可以严格地彼此比较直到处理时限终止时间的剩余时间,并且还可以选择和执行具有直到至少处理时限终止时间的小的剩余时间的消息记录处理。
此外,触发分组发射处理的优先级是5,但是优先级为5的触发分组发射处理和消息记录处理二者可以存在,并且此外,优先级等于或大于6的消息记录处理可能不存在。在该情况下,触发分组发射处理的优先级不被确定为最大(步骤S22中为否)。因此,在步骤S24中,消息记录处理单元103执行具有消息记录处理的最大优先级的处理(步骤S24)。
实际上,存在下述情况:这样的触发分组发射处理和优先级为5的消息记录处理二者存在,并且此外,优先级等于或大于6的消息记录处理不存在。此时,触发分组发射处理的优先级也可以被确定为最大(步骤S22中为是)。在该情况下,执行触发分组发射处理中的一个(步骤S23)。而且,触发分组发射处理的优先级例如还可以被设置为5.5,以便于防止这种情形的出现。因为消息记录处理的优先级被限制为整数,所以不存在优先级被设置为5.5的情况。因此,不存在消息记录处理和触发分组发射处理的优先级彼此相等的情况,使得总是优先级之间的差异总是发生。
在步骤S23或步骤S24完成之后,该过程前进到步骤S25。从具有要比较的优先级的接下来的对象中排除在步骤S23或步骤S24中执行的消息记录处理或触发分组发射处理的处理(步骤S25)。此后,过程再次返回到步骤S21并且重复相似的处理。
再次参考图6,在推送服务器100-1的触发分组发射单元104将触发分组发射到信息处理终端300-1(步骤S12)之后,处理时限决定单元105决定消息记录处理的处理时限终止时间(步骤S13)。处理时限终止时间的设置是通过如上所述将“对应于信息处理终端300的RRC状态的处理时限”加上“触发分组发射时间”来执行的。
此后,推送服务器100-1的消息记录处理单元103将消息记录在消息数据库200中(步骤S14)。该消息被包括在步骤S11中接收到的消息发射请求中。在消息数据库200中记录的详细信息是用作消息目的地的信息处理终端300-1和应用320-1的标识符以及消息主体。此外,步骤S14的处理在推送服务器100-1的处理调度单元107已经确定了处理应当开始的时间点执行。
在消息记录处理单元103操作的同时,当信息处理终端300-1的触发分组接收单元311接收到触发分组时,消息接收单元312将消息获取请求发射到推送服务器100(步骤S15)。
在本操作示例中,假设推送服务器100-n已经分配了对消息获取请求的处理。此外,已经发射了触发分组的推送服务器100和接收消息获取请求的推送服务器100由负载平衡器来分配,并且推送服务器100通常彼此不相同。
消息获取请求包括已经发射了消息获取请求的信息处理终端300-1的标识符。消息获取请求例如通过HTTP的GET方法来发射。当推送服务器100-n的消息发射单元109接收到消息获取请求时,消息参考单元108参考消息数据库200。基于包括在消息获取请求中的信息处理终端300-1的标识符,推送服务器100-n的消息发射单元109获取要被发射到信息处理终端300-1的消息(步骤S16)。
接下来,推送服务器100-n的消息发射单元109将消息参考单元108所获取的消息发射到信息处理终端300-1,作为对消息发射请求的响应(步骤S17)。在步骤S17,要发射到信息处理终端300-1的信息包括用作为目的地的应用320-1的标识符以及消息主体。消息发射请求的响应例如通过作为HTTP的状态码的200OK(HTTPstatuscode200)来发射。在信息处理终端300-1的消息接收单元312接收到消息之后,消息通知单元313向指定为消息目的地的应用320-1通知该消息(步骤S18)。
迄今为止,如上所述,在示例性实施例1中,在消息记录处理之前优先处理触发分组的发射。因此,在应用服务器接收到消息发射请求之后直到触发分组到达信息处理终端的时间变短,使得消息到达信息处理终端之前的延迟变小。
而且,在示例性实施例1中,考虑到RRC状态,将优先级添加到多个消息记录处理中的每一个。因此,能够避免当想要将消息优先发射到能够执行通信并且立即接收分组的信息处理终端时消息记录处理仍然没有结束的问题。另一方面,在想要将消息发射到处于暂停状态的信息处理终端之前,还能够结束关于处于暂停状态的信息处理终端的消息记录处理。也就是,在示例性实施例1中,在来自已经接收触发分组的信息处理终端的消息获取请求到达推送服务器之前,消息发射所需要的消息记录处理完成。因此,推送服务器可以立即返回包括关于消息获取请求的消息的响应。
迄今为止,根据示例性实施例1,即使推送服务器接收到多个消息发射请求并且因此对其施加大的负载,也能够抑制从推送消息从推送服务器到达终端时的时间到推送服务器接收到消息发射请求的时间生成的延迟的增加。
[示例性实施例2]
随后,将描述通过修改示例性实施例1的一部分而获得的示例性实施例2。
在示例性实施例1中,已经描述了用作消息发射目的地的信息处理终端的RRC状态是可靠的情况。另一方面,在本示例性实施例中,将描述在所获取的RRC状态中的特定水平的不确定性的情况。
这里,在所获取的RRC状态中包括不确定性的事件例如包括下述情况:仅以恒定周期从无线电通信网络的基站获得信息处理终端的RRC状态的信息。在该情况下,从基站获得信息的时间点不同于发射消息的时间点,导致时滞的出现。因此,存在下述情况:直到在从基站获得信息之后发射消息,改变信息处理终端的RRC状态。在这样的情况下,如下所述,出现两个问题。
例如,虽然RRC状态在从基站获得信息的时间点已经是暂停状态,但是考虑下述情况:因为已经执行了后续的通信,所以RRC状态在发射消息的时间点变为可通信状态。在该情况下,因为没有必要等待消息的发射,所以优选地快速执行消息记录处理,但是因为所获取的RRC状态已经是暂停状态,所以处理时限被设置为长,并且消息记录处理的优先级变低。在这样的情况下,当来自已经接收到触发分组的信息处理终端的消息获取请求已经到达推送服务器时,消息记录处理没有完成。因此,推送服务器无法立即发射消息,并且消息发射处理需要等待,直到消息记录处理完成,导致了在消息到达信息处理终端之前的延迟的增加,这被称为第一问题。
另一方面,虽然RRC状态在从基站获得信息的时间点时已经是可通信状态,但是考虑下述情况:因为后续通信还没有被执行,所以RRC状态在发射消息的时间点变为暂停状态。在该情况下,有必要等待消息的发射,直到RRC状态变成可通信状态。因此,没有必要优先执行消息记录处理,但是由于所获取的RRC状态已经是可通信状态,所以消息记录处理被优先执行。因此,要优先地执行的另一消息记录处理被延缓,这被称为第二问题。
如上所述,当不确定性被包括在所获取的RRC状态中时,由于无法正确地设置消息记录处理的处理时限的事实而导致问题出现。在此,示例性实施例2的目的在于解决第一问题。
图8是图示说明示例性实施例2的系统配置的框图。参考图8,示例性实施例2包括推送服务器500-1到500-n、消息数据库200、信息处理终端300-1到300-m以及应用服务器400-1到400-j。
与示例性实施例1的区别在于,推送服务器100-1到100-n用推送服务器500-1到500-n来替换。因此,下面将仅描述推送服务器500-1到500-n。另一方面,因为消息数据库200、信息处理终端300-1到300-m和应用服务器400-1到400-j以及这些元件和推送服务器500-1到500-n之间的连接等类似于示例性实施例1,所以将省略其详细描述。
图9是图示说明示例性实施例2中的推送服务器500的配置的框图。示例性实施例2中的推送服务器500与示例性实施例1中的推送服务器100的不同之处在于,推送服务器500具有处理时限改变单元501。此外,使用相同的附图标记来指定与示例性实施例1中的推送服务器100相同的元件,将省略其详细描述。
处理时限改变单元501改变由处理时限决定单元105所决定的消息记录处理的处理时限。
接下来,将参考图10的序列图来描述示例性实施例2的基本操作。在本操作示例中,将提供对下述情况的描述:应用服务器400-1将消息发射到在信息处理终端300-1上进行操作的应用320-1。而且,将提供对下述情况的描述:推送服务器500-1接收从应用服务器400-1发射的消息发射请求,并且推送服务器500-n接收从信息处理终端300-1发射的消息获取请求。此外,接收消息发射请求的推送服务器500和接收消息获取请求的推送服务器500彼此不同的事实是因为负载平衡器的分配是如示例性实施例1中所述执行的。
在示例性实施例2的序列中,推送服务器500-1决定消息的记录处理时限的步骤11到13与示例性实施例1中的相同。实际上,在示例性实施例2的操作示例中,不同于示例性实施例1的操作示例不同,在消息记录处理完成之前,推送服务器500-n从信息处理终端300接收消息获取请求(步骤S15)。这是因为,虽然如上所述信息处理终端300-1的RRC状态已经被确定为暂停状态,但是信息处理终端300-1的RRC状态实际上是可通信状态,并且因此,在发射触发分组之后,来自信息处理终端300-1的消息获取请求比所假设的被更快速地返回。
假设已经从信息处理中断300-1接收到消息获取请求的推送服务器500-n的消息参考单元108参考消息数据库200,并且获取寻址到信息处理终端300-1的消息。然而,因为寻址到信息处理终端300-1的消息的记录处理还没有完成,所以消息参考单元108无法获取消息(步骤S16)。在该情况下,优选地关于寻址到信息处理终端300-1的消息快速执行消息记录处理。然而,因为信息处理终端300-1的RRC状态已经被确定为暂停状态,所以关于寻址到信息处理终端300-1的消息,消息记录处理的优先级仍然低。
在此,推送服务器500-n的处理时限改变单元501改变消息记录处理关于寻址到信息处理终端300-1的消息的处理时限。
推送服务器500-n的处理时限改变单元501将处理时限改变请求发射到想要执行寻址到信息处理终端300-1的消息记录处理的推送服务器500-1,并且请求消息记录处理的处理时限的改变(步骤S31)。此时,如上所述,在本示例性实施例中,因为由推送服务器500所执行的每个处理由负载平衡器来分配,所以相同推送服务器500不会一致地执行所有处理。因此,推送服务器500-n不保持关于负责寻址到信息处理终端300-1的消息记录处理的推送服务器500的信息。因此,包括在每个推送服务器500中的处理时限改变单元501彼此合作地搜索负责消息记录处理的推送服务器500。在下面的描述中,为了清楚使各个处理时限改变单元501彼此区分,将附图标记添加到处理时限改变单元501的末尾,类似于推送服务器500。例如,包括在推送服务器500-1中的处理时限改变单元501被表达为处理时限改变单元501-1,并且包括在推送服务器500-n中的处理时限改变单元501被表达为处理时限改变单元501-n。
首先,推送服务器500-n的处理时限改变单元501-n将处理时限改变请求发射到包括在除了推送服务器500-n以外的其他推送服务器500中的所有处理时限改变单元501(处理时限改变单元501-1到处理时限改变单元501-n-1)。
处理时限改变请求保持指示作为已经发射了请求的包括处理时限改变单元501-n的推送服务器500的推送服务器500-n的标识符、以及用于标识用作消息目的地的信息处理终端300-1的标识符。
除了处理时限改变单元501-n之外,已经接收到处理时限改变请求的处理时限改变单元501(处理时限改变单元501-1到处理时限改变单元501-n-1)中的每一个基于包括在处理时限改变请求中的用作消息目的地的信息处理终端300-1的标识符来执行特定确定。该确定用于确定包括处理时限改变单元501(处理时限改变单元501-1到处理时限改变单元501-n-1)的推送服务器500是否是想要执行信息处理终端300-1的消息记录处理的推送服务器500。也就是,处理时限改变单元501-1确定推送服务器500-1是否是想要执行信息处理终端300-1的消息记录处理的推送服务器500。类似地,另一处理时限改变单元501(例如,处理时限改变单元501-2)确定推送服务器500-2是否是想要执行信息处理终端300-1的消息记录处理的推送服务器500。
而且,可能存在下述情况:执行寻址到信息处理终端300-1的消息记录处理的推送服务器500是已经在步骤S15中接收到消息获取请求的推送服务器500-n本身。因此,推送服务器500-n的处理时限改变单元501-n检查推送服务器500-n是否想要执行信息处理终端300-1的消息记录处理。
在该示例中,想要执行信息处理终端300-1的消息记录处理的推送服务器此时是推送服务器500-1。因此,已经接收到处理时限改变请求的推送服务器500-1的处理时限改变单元501-1确定推送服务器500-1想要执行信息处理终端300-1的消息记录处理,并且改变消息记录处理的处理时限(步骤S32)。这是基于包括在处理时限改变请求中的用作消息目的地的信息处理终端300-1的标识符来确定的。另一方面,另一处理时限改变单元501(处理时限改变单元501-2到处理时限改变单元501-n-1)确定了包括其他处理时限改变单元501的推送服务器500不想要执行消息记录处理,并且不特别执行任何更多处理。类似地,作为处理时限改变请求的发射源的处理时限改变单元501-1也确定了推送服务器500-1不想要执行消息记录处理,并且不特别执行任何更多处理。
这里,通过处理时限改变单元501-1来改变消息记录处理的处理时限,并且处理时限终止时间成为当前时间。通过该改变,直到消息记录处理的处理时限终止时间的剩余变为零。因此,寻址到信息处理终端300-1的消息记录处理的优先级被设置为10,这是最大值。以该方式,处理优先级决定单元106和消息记录处理单元103以最高优先级来执行寻址到信息处理终端300-1的消息记录处理(步骤S33)。
已经完成了消息记录处理的推送服务器500-1的处理时限改变单元501-1向推送服务器500-n的处理时限改变单元501-n通知消息记录处理的完成(步骤S34)。
此时,基于包括在处理时限改变请求中的已经发射了改变请求的推送服务器500-n的标识符来决定用作通知目的地的处理时限改变单元501-n。处理时限改变单元501-n向包括在推送服务器500-n中的消息参考单元108通知指示消息记录处理已经完成的事实的信息。已经接收到通知的消息参考单元108再次参考消息数据库200,并且获取寻址到信息处理终端300-1的消息(步骤S35)。
消息发射单元109将在步骤S35中获取的消息发射到信息处理终端300(步骤S17)。因为后续处理与示例性实施例1相同,所以将省略其详细描述。
如上所述,在示例性实施例2中,类似于示例性实施例1,在消息记录处理之前优先执行触发分组的发射处理,使得在消息到达信息处理终端300之前的延迟变小。
而且,如果RRC状态的估计结果错误,则在执行消息记录处理之前,推送服务器500可以从信息处理终端300接收消息获取请求。即使在这样的情况下,也改变消息记录处理的处理时限终止时间,并且以最高优先级执行寻址到已经发射了消息获取请求的信息处理终端的消息的记录处理。因此,获得下述效果:在推送服务器500变得能够将消息发射到信息处理终端300之前的时间被抑制为最小,但是用作消息发射目的地的信息处理终端300的RRC状态已经被改变。示例性实施例2在下述情况下特别优选:在所获取的RRC状态中包括特定水平的不确定性(例如,处于暂停状态的信息处理终端进入可通信状态的情况)。
[示例性实施例3]
随后,将描述通过修改示例性实施例1的一部分而获得的示例性实施例3。
在示例性实施例2中,已经描述了下述情况:在RRC状态的估计中存在不确定性,并且推送服务器在消息的预设记录处理时限终止时间之前从信息处理终端接收消息获取请求。也就是,已经描述了解决示例性实施例2的描述的开始时所描述的第一问题的情况。另一方面,示例性实施例3的目的在于,解决在示例性实施例2的描述的开始时所描述的第二问题。也就是,在示例性实施例3中,将描述下述情况:不论消息的预设记录处理时限终止时间的经过如何,推送服务器没有从信息处理终端接收到消息获取请求。
在下述情况下,这样的事件发生:已经通过将信息处理终端的RRC状态视为可通信状态而设置了消息记录处理时限,但是信息处理终端的RRC状态实际上已经是暂停状态。在该情况下,虽然实际上在推送服务器从信息处理终端接收到消息获取请求之前存在空闲时间,但是过了消息记录处理的处理时限终止时间。因此,对消息记录处理分配不必的高的优先级。以该方式,虽然存在空闲时间,但是消息记录处理没有必要被优先执行,使得另一消息记录处理被延缓。在示例性实施例3中,解决了这样的问题。
图11中所示的示例性实施例3中的配置类似于示例性实施例2中的配置,但是处理时限改变单元501被改变为处理时限改变单元501B。
在示例性实施例3中,由推送服务器500的处理时限改变单元501B所执行的处理时限改变方法不同于由示例性实施例2的推送服务器500的处理时限改变单元501所执行的处理时限改变方法。因此,在下面的描述中,还将仅描述由处理时限改变单元501B所执行的处理时限改变方法。
图12是图示说明示例性实施例3中的推送服务器500的处理时限改变单元501B的处理流程的流程图。
推送服务器500的处理时限改变单元501B检查没有完成处理的消息记录处理的处理时限。此外,处理时限改变单元501B检查是否接收到对与没有完成处理的消息记录处理相对应的消息的消息获取请求(步骤S41)。
处理时限改变单元501B检查是否存在满足以下两个条件的消息记录处理:消息记录处理是当前时间过了处理时限终止时间的消息记录处理,以及没有接收到对与该消息记录处理相对应的消息的消息获取请求(步骤S42)。
将描述这两个条件。如上所述,当消息的处理时限终止时间已经过去时,优先级被设置为最大值10。因此,该消息要以最高优先级进行处理。然而,例如,当大量消息集中于推送服务器500并且对其施加负载时,可能存在下述情况:优先级为10的多个消息的处理被延迟。如上所述,优先级为10的消息被延迟,使得优先级为9或更小的消息的处理不被执行。因此,当施加这样的负载时,优选地,改变消息记录处理的处理时限,以便于关于优先级为10的消息当中的不需要被先处理的消息更晚地被处理。以该方式,优先级为10的其他消息以及优先级为9或更小的消息被先处理。
为此,通过将信息处理终端的RRC状态视为可通信状态而设置了消息记录处理时限,但是优选地延缓信息处理终端的RRC状态实际上已经是暂停状态的消息的消息记录处理。
在这方面,没有接收消息获取请求也被用作条件。没有接收消息获取请求指示信息处理终端的RRC状态被推测为暂停状态。另一方面,消息获取请求的接收指示信息处理终端的RRC状态被推测为可通信状态。因此,在步骤S42,没有接收消息获取请求和当前时间过了处理时限终止时间的情况二者被用作条件。
当存在甚至一个满足步骤S42的两个条件的消息记录处理时(步骤S42中为是),处理时限改变单元501B针对满足这两个条件的所有消息记录处理来改变处理时限(步骤S43)。
这里,通过如上所述,将“与信息处理终端300的RRC状态相对应的处理时限”加上“触发分组发射时间”来设置处理时限终止时间,但是与RRC状态相对应的处理时限再次被设置为暂停状态的处理时限。
也就是,在本操作示例中,当信息处理终端的RRC状态已经被视为可通信状态时,处理时限改变单元501B将“处理时限终止时间”设置为等于“触发分组的发射时间+100毫秒”。而且,处理时限改变单元501B在步骤S43中将其新改变为“处理时限终止时间=触发分组的发射时间+3秒”。然后,该过程前进到步骤S44。此外,本操作示例已经描述了下述情况:对应于RRC状态的处理时限被再次设置为暂停状态的值,但是其还可以被设置为另一值。例如,其还可以被再次设置为超过可通信状态的值的另一值并且小于暂停状态的值。例如,这还可以被改变为“处理时限终止时间=触发分组的发射时间+2秒”。
另一方面,在步骤S42,当不存在当前时间过了处理时限终止时间的消息记录处理时(步骤S42中为否),不执行步骤S43的处理,并且该过程直接转变为步骤S44。
在步骤S44,该过程被停止恒定时间段。过程被停止的时间段可以被预先被设置,并且例如被设置为10毫秒。然后,该过程返回到步骤S41并且再次重复类似的处理。
此外,下面是停止过程的原因。即使步骤S41和步骤S42的确定已经在恒定时间还没有过去的状态下以高速继续被执行,也不太可能“新出现没有成全处理的消息记录处理,但是处理时限终止时间过了当前时间”。因此,过程变得复杂。在此,在步骤S44中等待恒定时间段。以该方式,因为变得很可能达到“新出现没有完成处理的消息记录处理,但是处理时限终止时间过了当前时间”的特定程度,所以步骤S41和步骤S42的确定被再次执行。换言之,这指示步骤S41到步骤S44以恒定时间的周期被规则地重复。
因为示例性实施例3中的消息发射处理类似于示例性实施例2,将省略其描述。
如上所述,在示例性实施例3中,当在信息处理终端300的RRC状态下存在不确定性时,防止在消息的记录处理中不必要地设置高优先级。以该方式,获得下述效果:能够提前触发分组的另一发射处理和应该被处理的消息的另一记录处理的执行时间,使得在消息到达信息处理终端300之前的延迟被减小。示例性实施例3对于下述情况特别优选:在所获取的RRC状态中包括特定水平的不确定性,并且处于暂停状态的信息处理终端被错误地确定为处于可通信状态。
而且,上述每个示例性实施例是本发明的优选示例性实施例。然而,本发明的范围只限于上述的示例性实施例,在不偏离本发明的范围的情况下,可以进行各种修改。
例如,在上述示例性实施例3的步骤S42中,由于消息获取请求已经到达,要被快速执行的消息记录处理的处理时限不被延长。也就是,除了要在步骤S42中确定的消息的处理时限终止时间已经结束的情况之外,还要考虑要被确定的消息的消息获取请求已经到达作为条件。
实际上,示例性实施例2和示例性实施例3彼此相组合,使得有可能省略步骤S42中对消息获取请求的到达的存在与否的检查。
具体地,示例性实施例2和示例性实施例3彼此结合,使得在执行示例性实施例2的流程时也执行图12中所图示的示例性实施例3的特定流程。这样,有可能防止这样的情形:根据下述原因,要被快速执行的消息记录处理的处理时限被延长,因为已经到达消息获取请求。
当示例性实施例2和示例性实施例3已互相结合时,已被确定为处于暂停状态但实际已经处于可通信状态的消息要在示例性实施例2中被处理,使得有可能快速结束消息记录处理。
另一方面,考虑在示例性实施例2中未被处理的消息以及在进行消息获取请求之前已经结束消息记录处理的消息以外的消息已经被确定处于可通信状态但实际上处于暂停状态。对于这样的消息,处理时限被再次通过示例性实施例3的流程来设置为暂停状态的处理时限。也就是,示例性实施例2和示例性实施例3互相结合,使得有可能应付这样两种情况:消息已经被确定处于暂停状态但实际上已处于可通信状态,以及消息已经被确定为处于可通信状态但实际上已经是暂停状态。
此外,上述的推送服务器、消息数据库、信息处理终端和应用服务器可以由硬件、软件或其组合来实现。而且,通过上述的推送服务器、消息数据库、信息处理终端和应用服务器的合作所执行的消息发射方法也可以由硬件、软件或其组合来实现。这里,软件实现表明通过计算机读取和程序的执行来实现。
可以使用各种类型的非瞬时计算机可读介质,并且可以被供应到计算机。非瞬时计算机可读介质包括各种类型的有形存储介质。非瞬时计算机可读介质的示例包括磁性记录介质(例如,灵活盘、磁带、硬盘驱动器)、CD-ROM(只读存储器)、CD-R、CD-R/W、半导体存储器(例如掩膜ROM、PROM(可编程ROM)、EEPROM(可擦写ROM)、闪存ROM、RAM(随机存取存储器)。而且,程序可以通过各种类型的瞬时计算机可读介质而被供应给计算机。瞬时计算机可读介质的示例包括电信号、光学信号以及电磁波。瞬时计算机可读介质可以经由有线通信路径,诸如电线和光纤,或无线通信路径,将程序供应至计算机。
部分或全部的上述的示例性实施例还被写为与下面的补充注释一样,但并不限制于此。
(补充注释1)一种消息发射装置,执行关于到终端的消息发射的处理,包括:通知装置,被配置为执行用于发射触发分组的通知处理,所述触发分组指示未发射到所述终端的所述消息的存在;准备装置,被配置为执行用于发射所述消息到所述终端的准备处理;以及顺序决定装置,被配置为决定所述通知处理和所述准备处理的执行顺序,使得所述准备处理在从所述终端接收到消息获取请求作为对所述触发分组的响应之前结束。
(补充注释2)根据补充注释1所述的消息发射装置,其中,基于所述终端处于可通信状态还是暂停状态,决定所述执行顺序,使得对处于可通信状态的终端的所述准备处理优先地在对处于暂停状态的终端的所述准备处理之前执行。
(补充注释3)根据补充注释1或2所述的消息发射装置,其中,决定所述执行顺序,使得所述通知处理优先地在所述准备处理的至少一部分之前执行。
(补充注释4)根据补充注释1到3中任意一项所述消息发射装置,其中,基于所述终端处于可通信状态还是暂停状态,在对处于可通信状态的终端的所述准备处理中设置第一长度的处理时限,在对处于暂停状态的终端的所述准备处理中设置比所述第一长度更长的第二长度的处理时限,并且决定所述执行顺序,使得具有由所述处理时限的终止时间决定的短时间的准备处理被优先地执行。
(补充注释5)根据补充注释4所述的消息发射装置,其中,在所述准备处理中设置随着接近所述处理时限的所述终止时间而增加的优先级,在所述通知处理中设置具有恒定水平的未改变优先级,并且决定所述执行顺序,使得所述准备处理和所述通知处理中具有高优先级的一个被优先地执行。
(补充注释6)根据补充注释4或5所述的消息发射装置,其中,尽管对特定消息的所述准备处理的处理时限的终止时间已经过去,当所述准备处理还未被执行且没有从所述终端接收到用于所述特定消息的所述消息获取请求时,所述准备处理的所述处理时限被改变为更长的处理时限。
(补充注释7)根据补充注释1到6中任意一项的消息发射装置,其中,尽管已经从所述终端接收到用于所述特定消息的所述消息获取请求,当所述准备处理还未对所述特定消息执行时,用于所述特定消息的所述准备处理被优先地执行,而不管所决定的执行顺序。
(补充注释8)一种消息发射方法,执行关于到终端的消息发射的处理,包括如下步骤:执行用于发射触发分组的通知处理,所述触发分组指示未发射到所述终端的所述消息的存在;执行用于发射所述消息到所述终端的准备处理;以及决定所述通知处理和所述准备处理的执行顺序,使得所述准备处理在从所述终端接收到消息获取请求作为对所述触发分组的响应之前结束。
(补充注释9)一种消息发射程序,使得计算机起到消息发射装置的作用,执行关于到终端的消息发射的处理,包括:通知装置,被配置为执行用于发射触发分组的通知处理,所述触发分组指示未发射到所述终端的所述消息的存在;准备装置,被配置为执行用于发射所述消息到所述终端的准备处理;以及顺序决定装置,被配置为决定所述通知处理和所述准备处理的执行顺序,使得所述准备处理在从所述终端接收到消息获取请求作为对所述触发分组的响应之前结束。
(补充注释10)一种推送型服务器,执行关于信息处理终端的消息的发射,包括:RRC状态获取单元,获取对其发射消息的信息处理终端的RRC(无线电资源控制)状态;消息记录处理单元,执行允许要被发射到所述信息处理终端的消息记录在记录设备中的处理;触发发射单元,发射触发分组,该触发分组向所述信息处理终端通报在服务器中存在对所述信息处理终端的未发射消息的事实;处理时限决定单元,基于由所述RRC状态获取单元所获取的所述信息处理终端的所述RRC状态,决定处理的处理时限,在所述处理中,所述消息记录处理单元记录寻址到所述信息处理终端的消息;处理优先级决定单元,基于所述处理时限,决定由所述消息记录处理单元执行的所述消息记录处理和由所述触发发射单元执行的所述触发发射处理的优先级;处理调度单元,基于由所述处理优先级决定单元所决定的所述处理优先级,决定由所述消息记录处理单元所执行的所述消息记录处理和由所述触发发射单元所执行的所述触发发射处理的处理顺序;以及消息发射单元,接收由已经接收到所述触发分组的所述信息处理终端发射的消息获取请求,并且发射寻址到所述信息处理终端的消息作为对所述消息获取请求的响应。
(补充注释11)根据补充注释10所述的服务器,其中,因为直到由所述处理时限决定单元决定的所述处理时限的剩余时间较长,所述处理优先级决定单元将由所述消息记录处理单元执行的所述消息记录处理的优先级被设置为较低。
(补充注释12)根据补充注释10或11所述的服务器,进一步包括处理时限改变单元,当所述消息记录处理单元在所述消息发射单元已经从所述信息处理终端接收到所述消息获取请求的时间点还没有完成寻址到所述信息处理终端的消息的所述记录处理时,改变寻址到所述信息处理终端的消息的所述记录处理的所述处理时限。
(补充注释13)根据补充注释10或11所述的服务器,进一步包括处理时限改变单元,当经过由所述处理时限决定单元所决定的所述消息记录处理的所述处理时限且所述消息发射单元没有从所述信息处理终端接收到所述消息获取请求时,改变所述消息记录处理的所述处理时限。
(补充注释14)一种消息发射方法,以推送方式执行关于信息处理终端的消息的发射,包括如下步骤:获取对其发射消息的信息处理终端的RRC状态;执行允许要被发射到所述信息处理终端的消息记录在记录设备中的处理;发射触发分组,该触发分组向所述信息处理终端通报在服务器中存在对所述信息处理终端的未发射消息的事实;基于所获取的所述信息处理终端的所述RRC状态,决定记录寻址到所述信息处理终端的消息的处理的处理时限;基于所述处理时限,决定所述消息记录处理和所述触发发射处理的优先级;基于所决定的处理优先级,决定在所述消息记录步骤中所执行的所述消息记录处理和所述触发发射处理的处理顺序;以及接收由已经接收到所述触发分组的所述信息处理终端发射的消息获取请求,并且发射寻址到所述信息处理终端的消息作为对所述消息获取请求的响应。
(补充注释15)根据补充注释14所述的消息发射方法,其中,因为直到所述处理时限的剩余时间较长,所述消息记录处理的优先级被设置为较低。
(补充注释16)根据补充注释14或15所述的消息发射方法,其中,当在已经从所述信息处理终端接收到所述消息获取请求的时间点还没有完成寻址到所述信息处理终端的消息的所述记录处理时,改变寻址到所述信息处理终端的消息的所述记录处理的所述处理时限。
(补充注释17)根据补充注释14或15所述的消息发射方法,其中,当经过所决定的所述消息记录处理的所述处理时限且没有从所述信息处理终端接收到所述消息获取请求时,改变所述消息记录处理的所述处理时限。
(补充注释18)一种程序,使得计算机执行如下处理,所述计算机以推送方式执行关于信息处理终端的消息的发射:RRC状态获取处理,获取对其发射消息的信息处理终端的RRC状态;消息记录处理处理,允许要被发射到所述信息处理终端的消息记录在记录设备中;触发发射处理,发射触发分组,该触发分组向所述信息处理终端通报在服务器中存在对所述信息处理终端的未发射消息的事实;处理时限决定处理,基于由所述RRC状态获取处理中所获取的所述信息处理终端的所述RRC状态,决定在所述消息记录处理中记录寻址到所述信息处理终端的消息的处理的处理时限;处理优先级决定处理,基于所述处理时限,决定在所述消息记录处理中执行的所述消息记录处理和在所述触发发射处理中执行的所述触发发射处理的优先级;处理调度处理,基于在所述处理优先级决定处理中所决定的所述处理优先级,决定所述消息记录处理和所述触发发射处理的处理顺序;以及消息发射处理,接收由已经接收到所述触发分组的所述信息处理终端发射的消息获取请求,并且发射寻址到所述信息处理终端的消息作为对所述消息获取请求的响应。
(补充注释19)根据补充注释18所述的程序,其中,因为直到由在所述处理时限决定处理中决定的所述处理时限的剩余时间较长,所述消息记录处理的优先级被设置为较低。
(补充注释20)根据补充注释18或19所述的程序,其中,当在所述消息发射处理中已经从所述信息处理终端接收到消息获取请求的时间点还没有完成寻址到所述信息处理终端的消息的所述记录处理处理时,进一步执行处理时限改变处理,改变寻址到所述信息处理终端的消息的所述记录处理的所述处理时限。
(补充注释21)根据补充注释18或19所述的程序,其中,当经过在所述处理时限决定处理中所决定的所述消息记录处理的所述处理时限且在所述消息发射处理中没有从所述信息处理终端接收到所述消息获取请求时,进一步执行处理时限改变处理,改变所述消息记录处理的所述处理时限。
本申请基于并且要求2013年2月7日提交的日本专利申请No.2013-022389的优先权的利益,其公开内容通过引用整体合并于此。
工业实用性
本发明优选用于防止推送消息分发中的延迟。
附图标记列表
100,100-1到100-n,500,500-1到500-n,1100 推送服务器
101 消息发射请求接收单元
102RRC 状态获取单元
103 消息记录处理单元
104 触发分组发射单元
105 处理时限决定单元
106 处理优先级决定单元
107 处理调度单元
108 消息参考单元
109 消息发射单元
200,1200 消息数据库
300,300-1到300-m 信息处理终端
310,1002 推送客户端
311 触发分组接收单元
312 消息接收单元
313 消息通知单元
320-1到320-k,1001 应用
400,400-1到400-j,1300 应用服务器
501,501B 处理时限改变单元
Claims (9)
1.一种执行关于对终端的消息发射的处理的消息发射装置,包括:
通知部件,所述通知部件被配置为执行用于发射触发分组的通知处理,所述触发分组指示存在没有被发射到所述终端的所述消息;
准备部件,所述准备部件被配置为执行用于将所述消息发射到所述终端的准备处理;以及
顺序决定部件,所述顺序决定部件被配置为决定所述通知处理和所述准备处理的执行顺序,使得所述准备处理在从所述终端接收到消息获取请求作为对所述触发分组的响应之前结束。
2.根据权利要求1所述的消息发射装置,
其中,基于所述终端处于可通信状态还是暂停状态,决定所述执行顺序,使得在用于处于所述暂停状态的终端的所述准备处理之前,优先执行用于处于所述可通信状态的终端的所述准备处理。
3.根据权利要求1或2所述的消息发射装置,
其中,决定所述执行顺序,使得在所述准备处理的至少一部分之前优先执行所述通知处理。
4.根据权利要求1到3中的任何一项所述的消息发射装置,
其中,基于所述终端处于所述可通信状态还是所述暂停状态,在用于处于所述可通信状态的终端的所述准备处理中设置第一长度的处理时限,在用于处于所述暂停状态的终端的所述准备处理中设置比所述第一长度长的第二长度的处理时限,并且决定所述执行顺序,使得具有到所述处理时限的终止时间的短时间的准备处理被优先执行。
5.根据权利要求4所述的消息发射装置,
其中,在所述准备处理中设置随着对所述处理时限的所述终止时间的接近而增加的优先级,在所述通知处理中设置具有恒定水平的未改变的优先级,并且决定所述执行顺序,使得所述准备处理和所述通知处理中具有高优先级的一个被优先执行。
6.根据权利要求4或5所述的消息发射装置,
其中,虽然用于特定消息的所述准备处理的处理时限的终止时间已经过去,但是当所述准备处理仍然没有被执行并且没有从所述终端接收到对所述特定消息的所述消息获取请求时,所述准备处理的所述处理时限被改变为更长的处理时限。
7.根据权利要求1到6中的任何一项所述的消息发射装置,
其中,虽然已经从所述终端接收到对所述特定消息的所述消息获取请求,但是当所述准备处理仍然没有针对所述特定消息被执行时,不论所决定的执行顺序如何,用于所述特定消息的所述准备处理都被优先执行。
8.一种执行关于对终端的消息发射的处理的消息发射方法,包括下述步骤:
执行用于发射触发分组的通知处理,所述触发分组指示存在没有被发射到所述终端的所述消息;
执行用于将所述消息发射到所述终端的准备处理;以及
决定所述通知处理和所述准备处理的执行顺序,使得所述准备处理在从所述终端接收到消息获取请求作为对所述触发分组的响应之前结束。
9.一种消息发射程序,使得计算机用作消息发射装置,所述消息发射装置执行关于对终端的消息发射的处理,包括
通知部件,所述通知部件被配置为执行用于发射触发分组的通知处理,所述触发分组指示存在没有被发射到所述终端的所述消息;
准备部件,所述准备部件被配置为执行用于将所述消息发射到所述终端的准备处理;以及
顺序决定部件,所述顺序决定部件被配置为决定所述通知处理和所述准备处理的执行顺序,使得所述准备处理在从所述终端接收到消息获取请求作为对所述触发分组的响应之前结束。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013022389 | 2013-02-07 | ||
JP2013-022389 | 2013-02-07 | ||
PCT/JP2014/051053 WO2014122981A1 (ja) | 2013-02-07 | 2014-01-21 | メッセージ送信装置、メッセージ送信方法及びメッセージ送信プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105009097A true CN105009097A (zh) | 2015-10-28 |
CN105009097B CN105009097B (zh) | 2018-01-30 |
Family
ID=51299578
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480007975.5A Expired - Fee Related CN105009097B (zh) | 2013-02-07 | 2014-01-21 | 一种消息发射装置及方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9866625B2 (zh) |
JP (1) | JPWO2014122981A1 (zh) |
CN (1) | CN105009097B (zh) |
WO (1) | WO2014122981A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9854028B2 (en) * | 2014-10-23 | 2017-12-26 | Bloomberg Finance L.P. | Apparatus and method for efficient, coordinated, distributed execution |
JPWO2022045061A1 (zh) * | 2020-08-31 | 2022-03-03 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110110327A1 (en) * | 2009-11-06 | 2011-05-12 | Qualcomm Incorporated | System information acquisition in connected mode |
CN102301758A (zh) * | 2009-01-30 | 2011-12-28 | 株式会社Ntt都科摩 | 移动台和移动通信方法 |
CN102870145A (zh) * | 2010-04-30 | 2013-01-09 | 苹果公司 | 用于在移动通信装置中保持电池资源的方法和设备 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0984087A (ja) | 1995-09-14 | 1997-03-28 | Casio Comput Co Ltd | 双方向無線通信システム |
JP2002366365A (ja) | 2001-03-30 | 2002-12-20 | Matsushita Electric Ind Co Ltd | データ取得装置、ダウンロードサーバおよびトリガサーバ |
JP5205093B2 (ja) * | 2008-03-21 | 2013-06-05 | 株式会社エヌ・ティ・ティ・ドコモ | ユーザ装置及び基地局装置 |
BR112013022758A2 (pt) * | 2011-03-07 | 2016-12-06 | Intel Corp | método implementado por computador, dispositivo de máquina para máquina, sistema de computador e sistema de máquina para máquina |
JP2012230555A (ja) | 2011-04-26 | 2012-11-22 | Zeus Enterprise:Kk | 情報配信システムおよび情報配信方法 |
US9374769B2 (en) * | 2012-12-05 | 2016-06-21 | Broadcom Corporation | Enhanced higher priority public land mobile network (HPPLMN) search |
US9086902B2 (en) * | 2012-12-18 | 2015-07-21 | International Business Machines Corporation | Sending tasks between virtual machines based on expiration times |
JP6337891B2 (ja) * | 2013-05-15 | 2018-06-06 | 日本電気株式会社 | 通信システム、通信タイミング制御装置、接続制御装置、通信タイミング制御方法及びプログラム |
US9503548B2 (en) * | 2013-10-28 | 2016-11-22 | International Business Machines Corporation | Subscriber based priority of messages in a publisher-subscriber domain |
-
2014
- 2014-01-21 JP JP2014560706A patent/JPWO2014122981A1/ja active Pending
- 2014-01-21 US US14/764,044 patent/US9866625B2/en not_active Expired - Fee Related
- 2014-01-21 CN CN201480007975.5A patent/CN105009097B/zh not_active Expired - Fee Related
- 2014-01-21 WO PCT/JP2014/051053 patent/WO2014122981A1/ja active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102301758A (zh) * | 2009-01-30 | 2011-12-28 | 株式会社Ntt都科摩 | 移动台和移动通信方法 |
US20110110327A1 (en) * | 2009-11-06 | 2011-05-12 | Qualcomm Incorporated | System information acquisition in connected mode |
CN102870145A (zh) * | 2010-04-30 | 2013-01-09 | 苹果公司 | 用于在移动通信装置中保持电池资源的方法和设备 |
Also Published As
Publication number | Publication date |
---|---|
US9866625B2 (en) | 2018-01-09 |
US20150365471A1 (en) | 2015-12-17 |
WO2014122981A1 (ja) | 2014-08-14 |
JPWO2014122981A1 (ja) | 2017-01-26 |
CN105009097B (zh) | 2018-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106850402B (zh) | 消息的传输方法和装置 | |
US10083021B2 (en) | Method and apparatus for providing firmware over the air service to user equipments | |
CN105812435B (zh) | 应用升级数据包处理方法、装置、电子设备及系统 | |
CN105991412B (zh) | 消息推送方法及装置 | |
CN101026795A (zh) | 用于促进推送内容的传递和处理的装置及相关方法 | |
US9883386B2 (en) | Method and a server for managing profiles | |
CN110808948B (zh) | 远程过程调用方法、装置及系统 | |
JP2017502581A (ja) | プッシュデータ送信をスケジューリングするための方法およびシステム | |
CN108781358B (zh) | 一种管理eUICC中的签约信息集的方法及相关设备 | |
CN104394067A (zh) | 局域网通讯方法和装置 | |
CN105165035B (zh) | 兼具文本消息传输的多媒体消息传输 | |
CN103701867A (zh) | 一种处理调用请求的方法、系统及中心服务器 | |
US20150067066A1 (en) | Provisioning Communication Services using Proxy Server in a Cloud | |
US10216593B2 (en) | Distributed processing system for use in application migration | |
CN103716230A (zh) | 消息发送方法、装置及服务器 | |
CN111510493A (zh) | 分布式数据传输方法及装置 | |
CN106302093B (zh) | 一种通信方法、系统及服务器 | |
CN105009097A (zh) | 消息发射装置、消息发射方法和消息发射程序 | |
CN106385516B (zh) | 一种设置业务转移的方法、装置及终端 | |
CN110413398B (zh) | 任务调度方法、装置、计算机设备和存储介质 | |
KR20160026138A (ko) | 클라우드 데이터 시스템의 급속 동기화 방법 및 그를 이용한 클라우드 데이터 시스템 | |
KR20120095431A (ko) | 서버와 한 세트의 클라이언트들 사이의 데이터 파일들의 분배의 처리 | |
US20160088076A1 (en) | Method, device and system for obtaining mobile network data resources | |
US9369331B1 (en) | Application message management | |
CN109766347B (zh) | 一种数据更新方法、装置、系统、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180130 Termination date: 20210121 |