CN106034141A - 消息处理方法、资源获取方法、服务器及终端设备 - Google Patents

消息处理方法、资源获取方法、服务器及终端设备 Download PDF

Info

Publication number
CN106034141A
CN106034141A CN201510108560.3A CN201510108560A CN106034141A CN 106034141 A CN106034141 A CN 106034141A CN 201510108560 A CN201510108560 A CN 201510108560A CN 106034141 A CN106034141 A CN 106034141A
Authority
CN
China
Prior art keywords
message
server
processing result
request
terminal device
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
Application number
CN201510108560.3A
Other languages
English (en)
Other versions
CN106034141B (zh
Inventor
阮臻
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201510108560.3A priority Critical patent/CN106034141B/zh
Publication of CN106034141A publication Critical patent/CN106034141A/zh
Application granted granted Critical
Publication of CN106034141B publication Critical patent/CN106034141B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Computer And Data Communications (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明实施例提供一种消息处理方法、资源获取方法、服务器及终端设备。本发明提供的消息处理方法,包括:服务器接收终端设备发送的第一消息请求,第一消息请求用于指示服务器对其指定的资源进行处理;服务器向终端设备返回第一消息响应,第一消息响应用于向终端设备指示已接收到第一消息请求;服务器对第一消息请求所指定的资源进行处理,生成第一处理结果。本发明实施例解决了现有技术中由于服务器对指示处理资源的HTTP请求进行处理需要一定的时间,而导致每个HTTP请求在服务器中长时间占用资源的情况,造成了服务器中资源消耗较大的问题。

Description

消息处理方法、资源获取方法、服务器及终端设备
技术领域
本发明实施例涉及通信技术,尤其涉及一种消息处理方法、资源获取方法、服务器及终端设备。
背景技术
超文本传输协议(Hyper Text Transfer Protocol,简称为:HTTP)为互联网中应用最为广泛的网络协议,该HTTP为客户端/服务器端(Client/Server,简称为:C/S)和浏览器/服务器端(Browser/Server,简称为:B/S)网络模式的消息请求和消息响应标准。客户端通过HTTP向服务器端所请求的资源由统一资源标识符(Uniform Resource Identifiers,简称为:URI)来标识。
基于表述性状态传递(Representational State Transfer,简称为:REST)的互联网(Web)应用程序,RESTful,遵循HTTP中定义的协议规范,可以将Web所提供的服务作为资源。其中,用于从服务器端获取资源的HTTP请求中包括资源获取(GET)指令,用于指示服务器端处理资源的HTTP请求中包括资源创建(POST)指令、资源更新(PUT)指令或者资源删除(DELETE)指令。通常,客户端发起指示服务器处理资源的HTTP请求时,服务器端直到处理完成该HTTP请求所指定的资源,才会通过与HTTP GET对应的HTTP响应将处理结果返回给客户端。由于服务器对指示处理资源的HTTP请求进行处理需要一定的时间,这样,导致每个HTTP请求在服务器端长时间占用资源的情况,造成资源消耗较大的问题。
发明内容
本发明实施例提供一种消息处理方法、资源获取方法、服务器及终端设备,以解决现有技术中由于服务器对指示处理资源的HTTP请求进行处理需要一定的时间,而导致每个HTTP请求在服务器中长时间占用资源的情况,造成了服务器中资源消耗较大的问题。
第一方面,本发明实施例提供一种消息处理方法,包括:
服务器接收终端设备发送的第一消息请求,所述第一消息请求用于指示所述服务器对其指定的资源进行处理;
所述服务器向所述终端设备返回第一消息响应,所述第一消息响应用于向所述终端设备指示已接收到所述第一消息请求;
所述服务器对所述第一消息请求所指定的资源进行处理,生成第一处理结果。
在第一方面的第一种可能的实现方式中,所述服务器接收终端设备发送的第一消息请求之后,还包括:
所述服务器接收所述终端设备发送的第二消息请求,所述第二消息请求用于指示所述服务器对其指定的资源进行处理;
所述服务器向所述终端设备返回第二消息响应,所述第二消息响应用于向所述终端设备指示已接收到所述第二消息请求;
所述服务器对所述第二消息请求所指定的资源进行处理,生成第二处理结果。
根据第一方面的第一种可能的实现方式,在第二种可能的实现方式中,还包括:
所述服务器接收终端设备发送的消息获取请求,所述消息获取请求中包括合并标识;
当所述合并标识指示合并发送所述第一处理结果和所述第二处理结果时,将所述第一处理结果和所述第二处理结果进行合并处理,并携带在所述消息获取请求对应的消息获取响应中发送给所述终端设备;或者,
当所述合并标识指示不合并发送所述第一处理结果和所述第二处理结果时,将所述第一处理结果携带在第一消息获取响应中,将所述第二处理结果携带在第二消息获取响应中发送给所述终端设备。
在第一方面的第三种可能的实现方式中,还包括:
所述服务器接收所述终端设备发送的消息获取请求,所述消息获取请求中包括合并标识;
当所述合并标识指示拆分发送所述第一处理结果时,将所述第一处理结果分为多个部分,一一对应的携带在多个消息获取响应中发送给所述终端设备。
第二方面,本发明实施例提供一种资源获取方法,包括:
终端设备向服务器发送第一消息请求,以使所述服务器对所述第一消息请求所指定的资源进行处理;
所述终端设备接收所述服务器返回的第一消息响应,所述第一消息响应用于向所述终端设备指示所述服务器已接收到所述第一消息请求;
所述终端设备接收所述服务器发送的第一处理结果,其中,所述第一处理结果为所述服务器对所述第一消息请求所指定的资源进行处理所生成的。
在第二方面的第一种可能的实现方式中,所述终端设备向服务器发送第一消息请求之后,还包括:
所述终端设备向所述服务器发送第二消息请求,以使所述服务器对所述第二消息请求所指定的资源进行处理;
所述终端设备接收所述服务器返回的第二消息响应,所述第二消息响应用于向所述终端设备指示所述服务器已接收到所述第二消息请求;
所述终端设备接收所述服务器发送的第二处理结果,其中,所述第二处理结果为所述服务器对所述第二消息请求所指定的资源进行处理所生成的。
根据第二方面的第一种可能的实现方式,在第二种可能的实现方式中,还包括:
所述终端设备向所述服务器发送消息获取请求,所述消息获取请求中包括合并标识;
当所述合并标识指示合并发送所述第一处理结果和所述第二处理结果时,所述终端设备接收到所述服务器发送的携带有所述第一处理结果和所述第二处理结果的消息获取响应;或者,
当所述合并标识指示不合并发送所述第一处理结果和所述第二处理结果时,所述终端设备接收到所述服务器发送的携带有所述第一处理结果的第一消息获取响应和携带有所述第二处理结果的第二消息获取响应。
在第二方面的第三种可能的实现方式中,还包括:
所述终端设备向所述服务器发送消息获取请求,所述消息获取请求中包括合并标识,所述合并标识指示拆分发送所述第一处理结果;
所述终端设备接收所述服务器发送的多个消息获取响应,所述多个消息获取响应中一一对应的携带有所述处理器对所述第一处理结果拆分的多个部分。
第三方面,本发明实施例提供一种服务器,包括:
接收模块,用于接收终端设备发送的第一消息请求,所述第一消息请求用于指示所述服务器对其指定的资源进行处理;
发送模块,用于向所述终端设备返回第一消息响应,所述第一消息响应用于向所述终端设备指示所述接收模块已接收到所述第一消息请求;
处理模块,用于对所述接收模块接收的第一消息请求所指定的资源进行处理,生成第一处理结果。
在第三方面的第一种可能的实现方式中,所述接收模块,还用于在接收到所述终端设备发送的第一消息请求之后,接收所述终端设备发送的第二消息请求,所述第二消息请求用于指示所述服务器对其指定的资源进行处理;
所述发送模块,还用于向所述终端设备返回第二消息响应,所述第二消息响应用于向所述终端设备指示所述接收模块已接收到所述第二消息请求;
所述处理模块,还用于对所述接收模块接收的所述第二消息请求所指定的资源进行处理,生成第二处理结果。
根据第三方面的第一种可能的实现方式,在第二种可能的实现方式中,所述接收模块,还用于接收所述终端设备发送的消息获取请求,所述消息获取请求中包括合并标识;
则所述发送模块,还用于当所述合并标识指示合并发送所述第一处理结果和所述第二处理结果时,将所述第一处理结果和所述第二处理结果进行合并处理,并携带在所述消息获取请求对应的消息获取响应中发送给所述终端设备;或者,当所述合并标识指示不合并发送所述第一处理结果和所述第二处理结果时,将所述第一处理结果携带在第一消息获取响应中,将所述第二处理结果携带在第二消息获取响应中发送给所述终端设备。
在第三方面的第三种可能的实现方式中,所述接收模块,还用于接收所述终端设备发送的消息获取请求,所述消息获取请求中包括合并标识;则所述发送模块,还用于当所述合并标识指示拆分发送所述第一处理结果时,将所述第一处理结果分为多个部分,一一对应的携带在多个消息获取响应中发送给所述终端设备。
第四方面,本发明实施例提供一种终端设备,包括:
发送模块,用于向服务器发送第一消息请求,以使所述服务器对所述第一消息请求所指定的资源进行处理;
接收模块,用于接收所述服务器返回的第一消息响应,所述第一消息响应用于向所述终端设备指示所述服务器已接收到所述发送模块发送的第一消息请求;
所述接收模块,还用于接收所述服务器发送的第一处理结果,其中,所述第一处理结果为所述服务器对所述第一消息请求所指定的资源进行处理所生成的。
在第四方面的第一种可能的实现方式中,所述发送模块,还用于在向服务器发送第一消息请求之后,向所述服务器发送第二消息请求,以使所述服务器对所述第二消息请求所指定的资源进行处理;
所述接收模块,还用于接收所述服务器返回的第二消息响应,所述第二消息响应用于向所述终端设备指示所述服务器已接收到所述发送模块发送的第二消息请求;
所述接收模块,还用于接收所述服务器发送的第二处理结果,其中,所述第二处理结果为所述服务器对所述第二消息请求所指定的资源进行处理所生成的。
根据第四方面的第一种可能的实现方式,在第二种可能的实现方式中,所述发送模块,还用于向所述服务器发送消息获取请求,所述消息获取请求中包括合并标识;
则所述接收模块用于接收所述服务器发送的第一处理结果和第二处理结果,具体包括:当所述合并标识指示合并发送所述第一处理结果和所述第二处理结果时,接收到所述服务器发送的携带有所述第一处理结果和所述第二处理结果的消息获取响应;或者,当所述合并信息指示不合并发送所述第一处理结果和所述第二处理结果时,接收到所述服务器发送的携带有所述第一处理结果的第一消息获取响应和携带有所述第二处理结果的第二消息获取响应。
在第四方面的第三种可能的实现方式中,所述发送模块,还用于向所述服务器发送消息获取请求,所述消息获取请求中包括合并标识,所述合并标识指示拆分发送所述第一处理结果;则所述接收模块,还用于接收所述服务器发送的多个消息获取响应,所述多个消息获取响应中一一对应的携带有所述处理器对所述第一处理结果拆分的多个部分。
本发明实施例所提供的消息处理方法、资源获取方法、服务器及终端设备,通过服务器在接收到终端设备发送的用于指示服务器对其指定的资源进行处理的第一消息请求后,即时向发送该第一消息请求的终端设备返回第一消息响应,该第一消息响应仅用于向终端设备指示已接收到其发送的第一消息请求,随后服务器对该第一消息请求所指定的资源进行处理生成第一处理结果,本实施例提供的消息处理方法,解决了现有技术中由于服务器对指示处理资源的HTTP请求所指定的资源需要一定的处理时间,而导致每个HTTP请求在服务器中长时间占用资源的情况,造成了服务器中资源消耗较大的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种消息处理方法的流程图;
图2为本发明实施例提供的另一种消息处理方法的流程图;
图3为本发明实施例提供的又一种消息处理方法的流程图;
图4为本发明实施例提供的一种资源获取方法的流程图;
图5为本发明实施例提供的另一种资源获取方法的流程图;
图6为本发明实施例所提供的一种消息处理方法的信令交互流程图;
图7为本发明实施例所提供的一种服务器的结构示意图;
图8为本发明实施例所提供的一种终端设备的结构示意图;
图9为本发明实施例所提供的另一种服务器的结构示意图;
图10为本发明实施例所提供的另一种终端设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
HTTP为C/S或B/S网络模式的消息请求和消息响应的标准协议。客户端是终端设备,可以为有线终端、或无线终端,例如为个人计算机(PersonalComputer,简称为:PC),手机,平板电脑或者个人数字助理(PersonalDigital Assistant,简称为:PDA)中的一个或多个,服务器端是网站,例如Web服务器。客户端通过使用Web浏览器、网络爬虫或者其它的工具,发起一个到服务器上指定端口,通常为默认端口80的HTTP请求;服务器上存储着一些资源,比如超级文本标记语言(HyperText Markup Language,简称为:HTML)文件和图像,可以对HTTP请求中所请求的内容进行处理,通常为对服务器中资源操作。在终端设备和服务器中间可能存在多个中间层,例如代理,网关,或者隧道。
例如,HTTP 1.1中定义了八种指令以实现对资源的八种处理,对本发明中HTTP请求所携带的其中4种指令具体说明如下:
1、GET:向指定的资源发出“显示”请求。使用GET方法应该只用在读取数据,而不应当被用于产生“副作用”的操作中,例如在网络应用程序(Web Application)中不适用该GET指令;其中一个原因是GET可能会被网络蜘蛛等随意访问。
2、POST:向指定资源提交数据,请求服务器进行增添新的数据(例如提交表单或者上传文件),该增添的数据被包含在请求本文中,该请求可能会创建新的资源或修改现有资源,或二者皆有。
3、PUT:向指定资源位置上传其最新内容,及对现有的资源进行修改。
4、DELETE:请求服务器删除请求的URI中所标识的资源。
当某个请求所针对的资源不支持对应的请求方式的时候,服务器应当返回状态码405(指示Method Not Allowed),当服务器不认识或者不支持对应的请求方式的时候,应当返回状态码501(指示Not Implemented)。
HTTP服务器至少应该实现GET指令和资源获取(HEAD)指令对资源的处理,其他指令都是可选的,其中,通过HEAD指令获取指定资源时,服务器不传回资源的文本部分。当然,所有的处理方式支持的实现都应当符合其所属处理方式各自的执行定义。另外,除了上述处理方式外,特定的HTTP服务器还可以扩展有自定义的处理方式。
HTTP协议的具体应用中,例如,基于REST的Web应用,即RESTful,遵循HTTP 1.1协议,由客户端向服务器端发起HTTP请求,从而服务器端根据接收到的HTTP请求向客户端返回与其对应的HTTP响应。具体地,C/S的网络系统中的服务器端例如可以为的一台服务器,该服务器可以管理多个终端设备,该多个终端设备即为与该服务器对应的客户端,该服务器可以处理多个终端设备发送的HTTP请求,并且分别向发送HTTP请求的终端设备返回响应的HTTP响应。
下面以具体地实施例对本发明的技术方案进行详细说明,以下各实施例中的所述的各请求均为HTTP请求,所述的各响应也均为HTTP响应。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图1为本发明实施例提供的一种消息处理方法的流程图。本实施例提供的方法适用于基于HTTP标准协议的Web应用程序的消息处理方式中,该方法可以由服务器执行,该服务器通常以硬件和软件的方法来实现,如图1所示,本实施例的方法可以包括:
S110,服务器接收终端设备发送的第一消息请求,该第一消息请求用于指示服务器对其指定的资源进行处理。
目前的Web应用程序中,将Web服务器可提供的服务视为服务器的资源,本发明以下各实施例具体以RESTful为例予以说明,服务器的处理类型主要包括对资源的增添、删除、修改和获取,服务器对资源的处理类型由终端设备通过发送HTTP消息请求的方式来指示。具体地,服务器接收终端设备发送的第一消息请求,该第一消息请求即为一个HTTP消息请求,通常地HTTP消息请求中至少包括请求行和请求头,举例来说,请求行可以为:PUT/images/logo.gif HTTP/1.1,GET对应的处理类型为获取资源,该请求行表示从/images在目录下修改logo.gif这个文件,请求头可以为Accept-Language:en,表示客户端接收的语言,HTTP消息请求中还可以包括空行或其它消息体,消息体中可以包括具体的资源内容,例如请求行指示请求修改一个文件的,消息体中则包括待修改的文件的具体数据信息。
需要说明的是,本实施例中的第一消息请求具体用于指示该服务器对其指定的资源进行增添、删除或修改处理,具体地,该第一消息请求中可以包括POST、DELETE或PUT指令;另外,可以通过GET指令获取服务器中的已有资源,包括获取上述POST、DELETE和PUT指令所请求处理的结果,不需要服务器的资源进行改变。
S120,服务器向终端设备返回第一消息响应,该第一消息响应用于向该终端设备指示已接收到第一消息请求。
在本实施例中,服务器接收到包括POST、DELETE或PUT指令的第一消息请求后,由于服务器对该第一消息请求所指定的资源进行处理需要一定的处理时间,或者在服务器中已存在多个待处理的HTTP请求时,通常将当前接收到的该第一消息请求所指定的资源和处理类型放入待处理的队列中。
现有技术中RESTful的实现方式中,直到服务器获取HTTP请求的处理结果后,才将该处理结果通过对应的HTTP响应返回给终端设备,在该实现过程中,从接收到HTTP请求到处理完成该HTTP请求的时间段内,服务器不会对终端设备返回任何HTTP响应,也就是说,服务器阻塞了向终端设备返回的HTTP响应,终端设备在未收到HTTP响应前无法获知其发送HTTP请求的接收状态和处理状态,例如是否被服务器成功接收。另外,在服务器中长时间保持一个未处理的HTTP请求会占用该服务器的系统资源,增加服务器的资源耗费。
本实施例在处理HTTP消息时,考虑到服务器将该第一消息请求的处理结果返回给终端设备需要延迟一定的时间,服务器接收到第一消息请求后,可以即时向终端设备返回与该第一消息请求对应的第一消息响应,一方面,向终端设备指示该服务器已接收到第一消息请求,正在准备进行处理,避免了终端设备长时间未接收到服务器的响应时,对服务器的处理状态不明确的现状,提高了消息处理方法的智能性;另一方面,服务器发送该第一消息响应后,即可关闭该第一消息请求所占用的HTTP连接的资源,有利于降低服务器的资源消耗。
需要说明的是,只有在第一消息请求指示服务器对其指定的资源进行处理时,才存在现有技术中服务器阻塞响应终端设备的现象,若该第一消息请求中具体包含GET指令,则不需要请求对服务器中的资源进行处理,直接获取即可,因此,本发明各实施例对基于HTTP的应用,提供一种新的实现方式,具体将HTTP请求划分为指示处理资源的请求和指示获取资源的请求,本发明各实施例中的第一消息请求具体为指示处理资源的请求。
S130,服务器对第一消息请求所请求的内容进行处理,生成第一处理结果。
在本实施例中,服务器对第一消息请求所指定的资源进行处理,处理的类型为该第一消息请求中指令的类型,具体为上述POST、DELETE或PUT指令对应的处理,服务器完成处理后生成的第一处理结果。显然地,本实施例中服务器接收到第一消息请求后即时返回对应的第一消息响应,随后才处理该第一消息请求所请求的资源,这种将消息响应与处理结果分别返回给终端设备处理的方式,在保证终端设备可以接收到第一处理结果的同时,避免了服务器对阻塞向终端设备返回第一消息响应的现象。
在具体实现中,服务器返回的第一处理结果时,具体携带在HTTP响应中,基于RESTful遵循的HTTP协议,可以采用GET指令取回该第一处理结果;实现过程为:服务器接收终端设备发送的用于取回上述第一处理结果的消息获取请求,该消息获取请求包括GET指令,则在服务器中具有该消息获取请求,即服务器可以将该第一处理结果携带在与上述消息获取请求对应的消息获取响应中发送给终端设备。
需要说明的是,本实施例中不限制终端设备发送消息获取请求时间,例如可以是在其发送第一消息请求之后发送的,也可以是在发送第一消息请求之前发送的,只要服务器中存在该消息获取请求,就可以在生成上述第一处理结果后,将其携带在与消息获取请求对应于的响应中,即消息获取响应中发送给终端设备。
本实施例所提供的消息处理方法,通过服务器在接收到终端设备发送的用于指示服务器对其指定的资源进行处理的第一消息请求后,即时向发送该第一消息请求的终端设备返回第一消息响应,该第一消息响应仅用于向终端设备指示已接收到其发送的第一消息请求,随后服务器对该第一消息请求所指定的资源进行处理生成第一处理结果,本实施例提供的消息处理方法,解决了现有技术中由于服务器对指示处理资源的HTTP请求进行处理需要一定的时间,而导致每个HTTP请求在服务器中长时间占用资源的情况,造成了服务器中资源消耗较大的问题。进一步的,本实施例中服务器在未返回处理结果的情况下,先向终端设备返回第一消息响应,具体用于通知终端设备服务器对其发送的第一消息请求的处理状态,避免了终端设备长时间未接收到服务器的响应时,对服务器的处理状态不明确的现状,提高了本实施例提供的消息处理方法的智能性。
可选地,图1所示实施例中的第一处理结果可以是通过一个消息获取响应返回的,如上述实施例中所述的通过消息获取请求对应的消息获取响应返回该第一处理结果;另外,该第一处理结果也可以是通过多个消息获取响应返回的,在具体实现中,请求取回该第一处理结果的消息获取请求中可以包括合并标识,当合并标识指示拆分发送第一处理结果时,服务器将该第一处理结果分为多个部分,一一对应的携带在多个消息获取响应中发送给终端设备。举例来说,该合并标识可以用merge(合并)字段来表示,规定merge的取值为-1时,指示拆分发送该第一处理结果。需要说明的是,本实施例不限制服务器接收到的消息获取请求的数量,若终端设备发送消息获取请求时,通过合并标识指示将第一处理结果拆分为3个部分,终端设备则可以发送3个消息获取请求,从而通过3个消息获取响应分别取回第一处理结果拆分后的3个部分;另外,本实施例不限制多个消息获取响应返回第一处理结果的多个部分的具体方式,例如可以是随机的,也可以是按照第一处理结果的每个部分的大小为顺序依次返回的,还可以通过在每个消息获取请求中添加指示信息以指示所取回的部分。
进一步地,本发明上述实施例提供的方法中,服务器中可以设置有定时器,则本实施例提供的方法还包括:服务器在定时器预置的时间内未向发送消息获取请求的终端设备返回消息获取响应时,取消该消息获取请求,并向该终端设备发送超时提示信息,用于指示该终端设备向服务器发送新的消息获取请求。
在本实施例的另一种可能的实现方式中,还可以在终端设备中设置定时器,具体实现方式为:服务器接收到终端设备发送的新的消息获取请求,该新的消息获取请求为该终端设备在预置的时间内未接收到消息获取响应时,取消已发送的消息获取请求后发送的。
图2为本发明实施例提供的另一种消息处理方法的流程图。本实施例是基于图1所示的实施例做出的进一步描述,本实施例提供的方法具体包括以下步骤:
S210,服务器接收终端设备发送的第一消息请求,该第一消息请求用于指示服务器对其指定的资源进行处理。
S220,服务器向终端设备返回第一消息响应,该第一消息响应用于向该终端设备指示已接收到第一消息请求。
S230,服务器接收终端设备发送的第二消息请求,该第二消息请求用于指示服务器对其指定的资源进行处理。
S240,服务器向终端设备返回第二消息响应,该第二消息响应用于向该终端设备指示已接收到第二消息请求。
具体地,S210~S220的实现方式参照图1所示实施例中的S110~S120;S230~S240与S210~S220的实现方式相同,为服务器接收的另一个需要进行资源处理的HTTP请求,该第二消息请求同样用于指示服务器对其指定的资源进行增添、删除或修改,即该第二消息请求中同样包括POST、PUT或DELETE指令,返回的响应则为与该第二消息请求对应的第二消息响应,其中,第二消息请求的类型,和服务器对其处理的方式均与S210~S220中相同。需要说明的是,本发明实施例不限制S210~S220与S230~S240的执行顺序,图2所示实施例具体以S210~S220在S230~S240之前执行为例予以示出。
S250,服务器对第一消息请求所指定的资源进行处理,生成第一处理结果。
S260,服务器对第二消息请求所指定的资源进行处理,生成第二处理结果。
在本实施例中,服务器可以将接收到的第一消息请求和第二消息请求所指定的资源和处理类型依次加入到待处理队列中,例如以接收到的先后顺序进行处理,还可以根据第一消息请求和第二消息请求所指定资源的大小依次进行处理。需要说明的是,本实施例不限制在服务器中生成第一处理结果和生成第二处理结果的先后顺序,即不限制S250和S260的执行顺序,仅需要保证S250在S220之后执行,S260在S240之后执行即可,图2所示实施例以S210~S260依次执行为例予以示出。
可选地,本实施例中的服务器可以通过接收第一消息获取请求和第二消息获取请求,分别返回S250中生成的第一处理结果和S260中生成的第二处理结果,具体地,服务器将第一处理结果携带在第一消息获取响应中,将第二处理结果携带在第二消息获取响应中发送给终端设备。本实施例中终端设备发送的消息获取请求的数量与其发送的请求处理资源的HTTP请求的数量相同,并且与服务器生成的处理结果的数量相同。
图3为本发明实施例提供的又一种消息处理方法的流程图,本实施例是基于图2所示的实施例做出的进一步描述,服务器返回第一处理结果和第二处理结果的具体方式为:在S250之前还可以包括S270,服务器接收终端设备发送的消息获取请求,该消息获取请求中包括合并标识;相应地,在S260之后还包括S280,当合并标识指示合并发送第一处理结果和第二处理结果时,服务器将第一处理结果和第二处理结果进行合并处理,并携带在消息获取请求对应的消息获取响应中发送给终端设备;或者,当合并标识指示不合并发送第一处理结果和第二处理结果时,服务器将第一处理结果携带在第一消息获取响应中,将第二处理结果携带在第二消息获取响应中发送给终端设备。举例来说,本实施例中的合并标识同样可以用merge字段来表示,merge的取值可以为1或0或,规定merge取值为1时,指示合并发送,merge取值为0时,指示不合并发送。
与上述实施例类似的,在本实施例中,基于RESTful遵循的HTTP协议,采用GET指令取回第一处理结果和第二处理结果,因此,该消息获取请求中同样包括GET指令,本实施例以S270在S250之前执行为例予以示出,表示服务器在生成上述处理结果前,只要在服务器中具有消息获取请求,则服务器可以将上述处理结果携带在与消息获取请求对应的消息获取响应中发送给终端设备。需要说明的是,本实施例中S270还可以是在S210之前,或者S210~S240之间执行的,只要是在服务器生成第一处理结果和第二处理结果之前接收到该消息获取请求,都可直接将处理结果携带在消息获取响应中返回。
在本实施例中,消息获取请求中包括指示是否合并发送第一处理结果和第二处理结果的合并标识,服务器通过接收到的消息获取请求返回已生成的第一处理结果和第二处理结果时,可以将上述两个处理结果携带在一个消息获取响应中返回给终端设备,即通过一个GET指令取回,也可以是将两个处理结果分别携带在两个消息获取响应中返回给终端设备,即服务器在返回结果前接收到两个消息获取请求,例如其中一个消息获取请求中包括GET 1,另一个消息获取请求中包括GET 2,服务器将第一处理结果携带在GET 1对应的消息获取响应中发送给终端设备,并将第二处理结果携带在GET 2对应的消息获取响应中发送给终端设备。
需要说明的是,本实施例不限制具体由哪个消息获取请求取回第一处理结果或第二处理结果,由于多个消息获取请求通常以串行的方式发送给服务器,因此可以按照服务器接收到多个消息获取请求的顺序,将首先生成的处理结果由先接收到的消息获取请求取回;也可以设置为其它规则;还可以通过在每个消息获取请求中添加指示信息以指示取回第一处理结果或第二处理结果。
进一步地,与上述实施例类似地,本实施例中的合并标识也可以指示拆分发送第一处理结果或/和第二处理结果,该合并标识的指示内容,拆分该第一处理结果或/和第二处理结果的方式,以及取回对第一处理结果或/和第二处理结果进行拆分后的多个部分的具体方式均与上述实施例类似,再次不在赘述。
通常地,服务器与终端设备之间未处理完成的一个HTTP请求为该服务器与终端设备之间保持的一个HTTP连接,在HTTP 1.0规范下,服务器在处理完每个包含Get或Post指令的HTTP请求后会关闭承载该请求的HTTP连接;在HTTP 1.1规范下,服务器处理完HTTP请求后可以保持承载该请求的HTTP连接,在处理两个HTTP请求的间隔时间里,该HTTP连接处于空闲状态,此时,服务器为该HTTP连接分配的线程资源会返还到线程池,可以供新的HTTP连接使用;当原来处于空闲的HTTP连接的终端设备发出新的HTTP请求时,服务器会从线程池里分配一个线程资源处理这个HTTP请求。上述处理方式在HTTP连接处于空闲机率较高、并发的HTTP连接数目很多的场景下对于降低服务器的资源负载比较有效。然而,当前基于HTTP的应用程序中,终端设备发送HTTP请求的次数变得更为频繁,若采用现有技术中处理HTTP请求的方式,对每个HTTP请求所指定的资源进行处理需要一定的时间,即每个HTTP请求会长时间占用一个HTTP连接,服务器的处理效率会降低,线程池里有限的线程数甚至可能会阻塞新的HTTP连接;另外,如果终端设备同时发起多个HTTP请求,服务器会阻塞多个HTTP连接,在被阻塞的HTTP连接的数量接近上限后会影响服务器的性能。
针对上述问题,本实施例通过终端设备中预先定义的请求控制信息来控制服务器与终端设备之间保持的HTTP连接的数量小于等于连接数量阈值,例如将HTTP连接的数量可以控制为最多2个,其中,服务器未返回响应的一个消息请求或未返回响应的一个消息获取请求,为服务器与终端设备之间保持的一个HTTP连接。因此,若采用现有技术中处理HTTP请求的方式,服务器在接收到第一消息请求后,并不能立即返回相应的第一消息响应,在服务器与终端设备之间保持了承载该第一消息请求的HTTP连接,若保持了多个如上述的HTTP连接,可以认为服务器端阻塞了多个HTTP连接。本实施例提供的方法,服务器在接收到第一消息请求后即时返回响应,则关闭了承载该第一消息请求的HTTP连接,并且控制服务器与终端设备之间的HTTP连接的数量,在避免服务器阻塞HTTP连接的同时,可以减小服务器的负载。在具体实现中,包括POST、PUT或DELETE指令的多个HTTP请求,第一消息请求和第二消息请求可以是并行发送的,也可以是串行发送的;另外,包括GET指令的消息获取请求通常为多个,用于分别请求取回不同的处理结果,该多个消息获取请求通常是串行发送的,以节省服务器与终端设备之间的资源开销。结合本发明各实施例中服务器返回响应的方式,无论采用上述哪种方式发送HTTP请求,都不会造成在服务器中阻塞响应终端设备的现象,即不会存在一个长期占用处理器资源的HTTP连接。
图4为本发明实施例提供的一种资源获取方法的流程图。本实施例提供的方法适用于基于HTTP标准协议的Web应用程序的资源获取方式中,该方法可以由终端设备执行,该终端设备通常以硬件和软件的方法来实现,如图4所示,本实施例的方法可以包括:
S310,终端设备向服务器发送第一消息请求,以使服务器对该第一消息请求所指定的资源进行处理。
本实施例同样以RESTful为例予以说明,由于服务器的处理类型主要包括对资源的增添、删除、修改和获取,终端设备通过发送HTTP消息请求的方式来指示服务器对资源的处理类型,GET指令所请求执行的是获取已有资源,包括获取POST、DELETE和PUT指令所请求处理的结果,不需要服务器的资源进行改变,服务器具体根据其接收到的第一消息请求所指定的资源和请求处理的类型进行处理。与上述实施例相同的,本实施例中的第一消息请求中同样包括POST、DELETE或PUT指令。
S320,终端设备接收服务器返回的第一消息响应,该第一消息响应用于向终端设备指示服务器已接收到第一消息请求。
在本实施例中,考虑到服务器对该第一消息请求所指定的资源进行处理需要一定的处理时间,或者在服务器中已存在多个待处理的HTTP请求,通常将当前接收到的该第一消息请求所指定的资源和处理类型放入待处理的队列中。也就是说,终端设备接收服务器对该第一消息请求的处理结果需要延迟一定的时间,因此,本实施例中终端设备向服务器发送该第一消息请求后,可以即时接收到不包含处理结果的第一消息响应,一方面,终端设备通过该第一消息响应可以获知服务器已接收到其发送的第一消息请求,正在准备进行处理,避免了终端设备长时间未接收到服务器的响应时,对服务器的处理状态不明确的现状,提高了消息处理方法的智能性;另一方面,服务器发送该第一消息响应后,即可关闭该第一消息请求所占用的HTTP连接的资源,有利于降低服务器的资源消耗。
需要说明的是,只有在第一消息请求指示服务器对其指定的资源进行处理时,才存在现有技术中服务器阻塞响应终端设备的现象,若该第一消息请求中具体包含GET指令,则不需要请求对服务器中的资源进行处理,直接获取即可,因此,本发明各实施例对基于HTTP的应用,提供一种新的实现方式,具体将HTTP请求划分为指示处理资源的请求和指示获取资源的请求,本发明各实施例中的第一消息请求具体为指示处理资源的请求。
S330,终端设备接收服务器发送的第一处理结果,其中,该第一处理结果为服务器对第一消息请求所指定的资源进行处理所生成的。
在本实施例中,终端设备接收到的第一处理结果具体为服务器对第一消息请求所指定的资源进行处理所生成的,即,服务器在向终端设备返回未包含处理结果的第一消息响应之后,才对第一消息请求所请求的资源进行处理生成该第一处理结果。显然地,本实施例中服务器接收到第一消息请求后即时返回第一消息响应,随后才处理该第一消息请求所请求的资源,这种将消息响应与处理结果分别返回给终端设备处理的方式,在保证终端设备可以接收到第一处理结果的同时,避免了服务器阻塞向终端设备返回第一消息响应的现象。
本实施例在具体实现中,终端设备接收的该第一处理结果,具体携带在HTTP响应中,基于RESTful遵循的HTTP协议,可以采用GET指令取回该第一处理结果;实现过程为:终端设备向服务器发送消息获取请求,该消息获取请求包括GET指令;则S330替换为:终端设备接收服务器发送的与消息获取请求对应的消息获取响应,消息获取响应中包括该第一处理结果。
需要说明的是,本实施例中不限制终端设备发送消息获取请求时间,例如可以是在其发送第一消息请求之后发送的,也可以是在发送第一消息请求之前发送的,只要服务器中存在该消息获取请求,就可以在生成上述第一处理结果后,将其携带在与消息获取请求对应于的响应中,即消息获取响应中发送给终端设备。
本实施例所提供的消息处理方法,终端设备在向服务器发送了用于指示服务器对其指定的资源进行处理的第一消息请求后,通过即时接收到的第一消息响应获知服务器已接收到该第一消息请求,随后接收到服务器对该第一消息请求所指定的资源进行处理生成第一处理结果,本实施例提供的消息处理方法,解决了现有技术中由于服务器对指示处理资源的HTTP请求进行处理需要一定的时间,而导致每个HTTP请求在服务器中长时间占用资源的情况,造成了服务器中资源消耗较大的问题。进一步的,本实施例中终端设备在未获得处理结果的情况下,先行获得服务器返回第一消息响应,即时获知服务器对其发送的第一消息请求的处理状态,避免了终端设备长时间未接收到服务器的响应时,对服务器的处理状态不明确的现状,提高了本实施例提供的消息处理方法的智能性。
可选地,图4所示实施例中的第一处理结果可以是通过一个消息获取响应返回的,如上述实施例中所述的通过消息获取请求对应的消息获取响应返回该第一处理结果;另外,该第一处理结果也可以是通过多个消息获取响应返回的,在具体实现中,请求取回该第一处理结果的消息获取请求中可以包括合并标识,该合并标识指示拆分发送第一处理结果,则终端设备接收服务器发送的多个消息获取响应,该多个消息获取响应中一一对应的携带有处理器对第一处理结果拆分的多个部分。与上述实施例类似地,同样可以通过merge字段来表示合并标识,规定merge的取值为-1时,指示拆分发送该第一处理结果。需要说明的是,本实施例不限制终端设备发送的消息获取请求的数量,同样不限制通过多个消息获取请求取回第一处理结果的多个部分的具体方式,例如可以是随机的,也可以是按照第一处理结果的每个部分的大小为顺序依次取回的,还可以通过在每个消息获取请求中添加指示信息以指示所取回的部分。
进一步地,本发明上述实施例提供的方法中,终端设备中可以设置有定时器,则本实施例提供的方法还包括:终端设备在定时器预置的时间内未接收到服务器返回的与消息获取请求对应的消息获取响应,取消消息获取请求,并向服务器发送新的消息获取请求。
在本实施例的另一种可能的实现方式中,还可以在服务器中设置定时器,具体实现方式为:终端设备接收到服务器发送的超时提示信息,该超时提示信息为服务器在预置的时间内未向终端设备发送消息获取响应时,取消已发送的消息获取请求后发送的;从而终端设备根据超时提示信息向服务器发送新的消息获取请求。
图5为本发明实施例提供的另一种资源获取方法的流程图。本实施例是基于图4所示的实施例做出的进一步描述,本实施例提供的方法具体包括以下步骤:
S410,终端设备向服务器发送第一消息请求,以使服务器对该第一消息请求所指定的资源进行处理。
S420,终端设备接收服务器返回的第一消息响应,该第一消息响应用于向终端设备指示服务器已接收到第一消息请求。
S430,终端设备向服务器发送第二消息请求,以使服务器对该第二消息请求所指定的资源进行处理。
S440,终端设备接收服务器返回的第二消息响应,该第二消息响应用于向终端设备指示服务器已接收到第二消息请求。
具体地,S410~S420的实现方式参照图4所示实施例中的S310~S320;S430~S440与S410~S420的实现方式相同,为终端设备发送的另一个需要服务器进行资源处理的HTTP请求,该第二消息请求同样用于指示服务器对其指定的资源进行增添、删除或修改,即该第二消息请求中同样包括POST、PUT或DELETE指令,接收的响应则为服务器即时发送与第二消息请求对应的第二消息响应,其中,第二消息请求的类型,和服务器对其处理的方式均与S410~S420中相同。需要说明的是,本实施例不限制S410~S420与S430~S440的执行顺序,图5所示实施例具体以S410~S420在S430~S440之前执行为例予以示出。
S450,终端设备接收服务器发送的第一处理结果,其中,该第一处理结果为服务器对第一消息请求所指定的资源进行处理所生成的。
S460,终端设备接收服务器发送的第二处理结果,其中,该第二处理结果为服务器对第二消息请求所指定的资源进行处理所生成的。
在本实施例中,服务器可以将终端设备发送的第一消息请求和第二消息请求所指定的资源和处理类型依次加入到待处理队列中,例如以接收到的先后顺序进行处理,还可以根据第一消息请求和第二消息请求所指定资源的大小依次进行处理。需要说明的是,本实施例不限制在服务器中生成第一处理结果和生成第二处理结果的先后顺序,也不限制终端设备接收到第一处理结果和第二处理结果的顺序,即不限制S450和S460的执行顺序,仅需要保证S450在S420之后执行,S460在S440之后执行即可,图5所示实施例以S410~S460依次执行为例予以示出。
可选地,本实施例中的终端设备可以通过发送第一消息获取请求和第二消息获取请求来取回第一处理结果和第二处理结果;具体的,终端设备接收到服务器发送的携带在第一消息获取响应中的第一处理结果,以及携带在第二消息获取响应中的第二处理结果。本实施例中终端设备发送的消息获取请求的数量与其发送的请求处理资源的HTTP请求的数量相同,并且与服务器生成的处理结果的数量相同。
在图5所述实施例的另一种可能的实现方式中,终端设备同样通过发送的消息获取请求来取回第一处理结果和第二处理结果,该消息获取请求中包括合并标识;相应地,当合并标识指示合并发送第一处理结果和第二处理结果时,终端设备接收到服务器发送的携带有第一处理结果和第二处理结果的消息获取响应;当合并标识指示不合并发送第一处理结果和第二处理结果时,终端设备接收到服务器发送的携带有第一处理结果的第一消息获取响应和携带有第二处理结果的第二消息获取响应。举例来说,本实施例中的合并标识同样可以用merge字段来表示,merge的取值指示的内容与上述实施例相同,故在此不再赘述。
与上述实施例类似的,在本实施例中,基于RESTful遵循的HTTP协议,采用GET指令取回第一处理结果和第二处理结果,因此,该消息获取请求中同样包括GET指令,本实施例的终端设备向服务器发送消息获取请求后,服务器才可以将生成的处理结果携带在消息获取响应中发送给终端设备。需要说明的是,本实施例中终端设备发送消息获取请求可以是在S410之前,或者S410~S450之间执行的,只要是在服务器生成第一处理结果和第二处理结果之前向其发送该消息获取请求,都可使得服务器直接将处理结果携带在消息获取响应中返回。
需要说明的是,本实施例不限制具体由哪个消息获取请求取回第一处理结果或第二处理结果,由于多个消息获取请求通常以串行的方式发送给服务器,因此可以按照终端设备发送多个消息获取请求的顺序,将首先生成的处理结果由服务器先接收到的消息获取请求返回;也可以设置为其它规则;还可以通过在每个消息获取请求中添加指示信息以指示取回第一处理结果或第二处理结果。
进一步地,与上述实施例类似地,本实施例中的合并标识也可以指示拆分发送第一处理结果或/和第二处理结果,该合并标识的指示内容,拆分该第一处理结果或/和第二处理结果的方式,以及取回对第一处理结果或/和第二处理结果进行拆分后的多个部分的具体方式均与上述实施例类似,再次不在赘述。
针对上述实施例中已提到的问题,即终端设备发送HTTP请求的次数变得更为频繁,若采用现有技术中处理HTTP请求的方式,对每个HTTP请求所指定的资源进行处理需要一定的时间,即每个HTTP请求会长时间占用一个HTTP连接,服务器的处理效率会降低,线程池里有限的线程数甚至可能会阻塞新的HTTP连接;另外,如果终端设备同时发起多个HTTP请求,服务器会阻塞与多个HTTP连接,在被阻塞的HTTP连接的数量接近上限后会影响服务器的性能。本实施例中同样可以通过终端设备中设置请求控制信息来控制服务器与终端设备之间保持的HTTP连接的数量小于等于连接数量阈值,例如将HTTP连接的数量可以控制为最多2个。需要说明的是,本实施例中包括POST、PUT或DELETE指令的HTTP请求,以及包括GET指令的HTTP请求的发送方式,服务器的处理方式,以及达到的有益效果均与上述实施例相同,故在此不再赘述。
图6为本发明实施例所提供的一种消息处理方法的信令交互流程图。本实施例提供的方法适用于基于HTTP标准协议的Web应用程序的消息处理方式中,该方法可以由服务器和终端设备执行,如图6所示,本实施例的方法可以包括:
S510,终端设备向服务器发送第一消息请求,该第一消息请求用于指示服务器对其指定的资源进行处理。
S520,服务器向终端设备返回第一消息响应,该第一消息响应用于向终端设备指示服务器已接收到第一消息请求。
S530,服务器对第一消息请求所请求的内容进行处理,生成第一处理结果。
在本实施例中,同样可以通过包括GET指令的消息获取请求取回该第一处理结果,具体地,服务器将该第一处理结果携带在与消息获取请求对应的消息获取响应中发送给终端设备。可选地,图6所示实施例中的第一处理结果可以是通过一个消息获取请求取回的,也可以是通过多个消息获取请求取回的,终端设备通过多个消息获取响应取回第一处理结果的具体方式为,本实施例提供的方法在S530之前还包括:S540,终端设备向服务器发送消息获取请求,该消息获取请求中包括合并标识,该合并标识指示拆分发送第一处理结果,S550,服务器将该第一处理结果分为多个部分,一一对应的携带在多个消息获取响应中发送给终端设备。
进一步地,本实施例提供的方法中,服务器中可以设置有定时器,则本实施例提供的方法还包括:服务器在定时器预置的时间内未向发送消息获取请求的终端设备返回消息获取响应时,取消该消息获取请求,并向该终端设备发送超时提示信息,用于指示该终端设备向服务器发送新的消息获取请求。在本实施例的另一种可能的实现方式中,定时器还可以设置于终端设备中,相应地,本实施例提供的方法还包括:终端设备在定时器预置的时间内未接收到服务器返回的与消息获取请求对应的消息获取响应,取消消息获取请求,并向服务器发送新的消息获取请求。
在上述实施例所示方法的基础上,本实施例在图6所示的S520之后,还可以包括:S560,终端设备向服务器发送第二消息请求,该第二消息请求用于指示服务器对其指定的资源进行处理。
S570,服务器向终端设备返回第二消息响应,该第二消息响应用于向终端设备指示服务器已接收到第一消息请求。
S580,服务器对第二消息请求所请求的内容进行处理,生成第二处理结果。
具体地,S560~S580与S510~S530的实现方式相同,本实施例中的第一消息请求和第二消息请求都用于指示服务器对其各自所指定的资源进行增添、删除或修改,即各消息请求中均包括POST、PUT或DELETE指令;并且本发明实施例不限制S510~S530与S560~S580的执行顺序,图6所示实施例具体以S510~S530在S560~S580之前执行的顺序为例予以示出。
可选地,本实施例中服务器可以通过接收第一消息获取请求和第二消息获取请求,分别返回S530中生成的第一处理结果和S580中生成的第二处理结果,具体地,服务器将第一处理结果携带在第一消息获取响应中,将第二处理结果携带在第二消息获取响应中发送给终端设备。本实施例中终端设备发送的消息获取请求的数量与其发送的请求处理资源的HTTP请求的数量相同,并且与服务器生成的处理结果的数量相同。
在图6所示本实施例的另一种可能的实现方式中,服务器通过可以通过S540中终端设备发送消息获取请求取回第一处理结果和第二处理结果,该消息获取请求中同样包括合并标识;相应地,S550替换为:当合并标识指示合并发送第一处理结果和第二处理结果时,服务器将第一处理结果和第二处理结果进行合并处理,并携带在消息获取请求对应的消息获取响应中发送给终端设备;或者,当合并标识指示不合并发送第一处理结果和第二处理结果时,服务器将第一处理结果携带在第一消息获取响应中,将第二处理结果携带在第二消息获取响应中发送给终端设备。本实施例中的合并标识同样可以用merge字段来表示,merge的取值指示的内容与上述实施例相同,故在此不再赘述。
需要说明的是,本实施例中S540还可以是在S510之前,也可以是在服务器生成第一处理结果和第二处理结果之前向其发送该消息获取请求,都可使得服务器直接将处理结果携带在消息获取响应中返回。
需要说明的是,本实施例不限制具体由哪个消息获取请求取回第一处理结果或第二处理结果,由于多个消息获取请求通常以串行的方式发送给服务器,因此可以按照终端设备发送多个消息获取请求的顺序,将首先生成的处理结果由服务器先接收到的消息获取请求返回;也可以设置为其它规则;还可以通过在每个消息获取请求中添加指示信息以指示取回第一处理结果或第二处理结果。
进一步地,与上述实施例类似地,本实施例中的合并标识也可以指示是否拆分发送第一处理结果或/和第二处理结果,该合并标识的指示内容,拆分该第一处理结果或/和第二处理结果的方式,以及取回对第一处理结果或/和第二处理结果进行拆分后的多个部分的具体方式均与上述实施例类似,再次不在赘述。
更进一步地,本实施例提供的方法同样可以通过在终端设备中设置请求控制信息来控制服务器与终端设备之间保持的HTTP连接的数量小于等于连接数量阈值,例如将HTTP连接的数量可以控制为最多2个。需要说明的是,本实施例中包括POST、PUT或DELETE指令的HTTP请求,以及包括GET指令的HTTP请求的发送方式,服务器的处理方式,以及达到的有益效果均与上述实施例相同,故在此不再赘述。
图7为本发明实施例所提供的一种服务器的结构示意图。本实施例提供的服务器具体包括:接收模块11、发送模块12和处理模块13。
其中,接收模块11,用于接收终端设备发送的第一消息请求,该第一消息请求用于指示服务器对其指定的资源进行处理。
本实施例中的第一消息请求同样用于指示服务器对其指定的资源进行增添、删除或修改处理,具体地,该第一消息请求中可以包括POST、DELETE或PUT指令;另外,可以通过GET指令获取服务器中的已有资源,包括获取上述POST、DELETE和PUT指令所请求处理的结果,不需要服务器的资源进行改变。
发送模块12,用于向终端设备返回第一消息响应,该第一消息响应用于向终端设备指示接收模块11已接收到第一消息请求。
本实施例提供的服务器在处理HTTP消息时,考虑到服务器将该第一消息请求的处理结果返回给终端设备需要延迟一定的时间,服务器接收到第一消息请求后,可以即时向终端设备返回与该第一消息请求对应的第一消息响应,一方面,向终端设备指示该服务器已接收到第一消息请求,正在准备进行处理,避免了终端设备长时间未接收到服务器的响应时,对服务器的处理状态不明确的现状,提高了消息处理方法的智能性;另一方面,服务器发送该第一消息响应后,即可关闭该第一消息请求所占用的HTTP连接的资源,有利于降低服务器的资源消耗。
处理模块13,用于对接收模块11接收的第一消息请求所指定的资源进行处理,生成第一处理结果。
本实施例在具体实现中,服务器返回的第一处理结果时,具体携带在HTTP响应中,基于RESTful遵循的HTTP协议,可以采用GET指令取回该第一处理结果;具体地,本实施例中的接收模块11还用于接收终端设备发送的消息获取请求,该消息获取请求包括GET指令;相应地,发送模块12还用于将处理模块13生成的第一处理结果携带在与接收模块11接收的消息获取请求对应的消息获取响应中发送给所述终端设备。
需要说明的是,本实施例中不限制终端设备发送消息获取请求时间,例如可以是在接收模块11接收到第一消息请求之后发送的,也可以是在接收模块11接收到第一消息请求之前发送的,只要服务器中存在该消息获取请求,就可以在处理模块13生成第一处理结果后,将其携带在与消息获取请求对应于的响应中,即消息获取响应中发送给终端设备。
本发明实施例提供的服务器用于执行本发明图1所示实施例提供的消息处理方法,具备相应的功能模块,其实现原理和技术效果类似,此处不再赘述。
可选地,图7所示实施例中处理模块13生成的第一处理结果可以是通过一个消息获取响应返回的,如上述实施例中所述的通过消息获取请求对应的消息获取响应返回该第一处理结果;另外,该第一处理结果也可以是通过多个消息获取响应返回的,在具体实现中,接收模块11接收到的消息获取请求中可以包括合并标识;则发送模块12,还用于当该合并标识指示拆分发送第一处理结果时,将第一处理结果分为多个部分,一一对应的携带在多个消息获取响应中发送给终端设备。
进一步地,同样可以在本实施例提供的服务器中设置定时器,相应的,本实施例提供的服务器还包括:取消模块,用于在定时器预置的时间内未向发送消息获取请求的终端设备返回消息获取响应时,取消该消息获取请求;则发送模块12还用于向该终端设备发送超时提示信息,以指示该终端设备向服务器发送新的消息获取请求。在本实施例的另一种可能的实现方式中,还可以通过在终端设备中设置定时器的方式取消超时的消息获取请求,具体实现方式为:接收模块11接收到终端设备发送的新的消息获取请求,该新的消息获取请求为该终端设备在预置的时间内未接收到消息获取响应时,取消已发送的消息获取请求后发送的。
需要说明的是,在本实施例中,可以不限制接收模块11接收到的指示处理资源的HTTP请求的数量,即接收模块11还用于接收终端设备发送的第二消息请求,该第二消息请求用于指示服务器对其指定的资源进行处理;则发送模块12还用于向终端设备返回第二消息响应,第二消息响应用于向终端设备指示接收模块11已接收到第二消息请求;处理模块13还用于对接收模块11接收的第二消息请求所指定的资源进行处理,生成第二处理结果。
在本实施例中,第二消息请求为服务器接收的另一个需要进行资源处理的HTTP请求,该第二消息请求同样用于指示服务器对其指定的资源进行增添、删除或修改,即该第二消息请求中同样包括POST、PUT或DELETE指令,返回的响应则为与该第二消息请求对应的第二消息响应,其中,第二消息请求的类型,和处理模块13对其处理的方式均与第一请求消息相同。
可选地,本实施例提供的服务器,其接收模块11可以通过接收第一消息获取请求和第二消息获取请求,分别返回处理模块13中生成的第一处理结果和第二处理结果,具体地,发送模块12将第一处理结果携带在第一消息获取响应中,将第二处理结果携带在第二消息获取响应中发送给终端设备。
在图7所示的另一种可能的实现方式中,接收模块11接收的消息获取请求中包括合并标识;则发送模块12返回第一处理结果和第二处理结果的具体方式可以为:当合并标识指示合并发送第一处理结果和第二处理结果时,服务器将第一处理结果和第二处理结果进行合并处理,并携带在消息获取请求对应的消息获取响应中发送给终端设备;或者,当合并标识指示不合并发送第一处理结果和第二处理结果时,服务器将第一处理结果携带在第一消息获取响应中,将第二处理结果携带在第二消息获取响应中发送给终端设备。
本实施例中的该消息获取请求中同样包括GET指令,并且同样不限制接收模块11接收到消息获取请求的时间,只要是在处理模块13生成处理结果前,服务器中具有消息获取请求,则发送模块12可以将上述处理结果携带在与消息获取请求对应的消息获取响应中发送给终端设备。
需要说明的是,本实施例不限制具体由哪个消息获取请求取回第一处理结果或第二处理结果,由于多个消息获取请求通常以串行的方式发送给服务器,因此可以按照服务器接收到多个消息获取请求的顺序,将首先生成的处理结果由先接收到的消息获取请求取回;也可以设置为其它规则;还可以通过在每个消息获取请求中添加指示信息以指示取回第一处理结果或第二处理结果。
进一步地,与上述实施例类似地,本实施例中的合并标识也可以指示拆分发送第一处理结果或/和第二处理结果,该合并标识的指示内容,拆分该第一处理结果或/和第二处理结果的方式,以及取回对第一处理结果或/和第二处理结果进行拆分后的多个部分的具体方式均与上述实施例类似,再次不在赘述。
本发明实施例提供的服务器用于执行本发明图2和图3所示实施例提供的消息处理方法,具备相应的功能模块,其实现原理和技术效果类似,此处不再赘述。
类似地,本实施例提供的服务器与终端设备之间保持的HTTP连接的数量,同样可以通过终端设备中预先定义的请求控制信息来控制,该HTTP连接的数量小于等于连接数量阈值,控制服务器与终端设备之间保持的HTTP连接的数量的具体方式和实现的有益效果均与上述实施例相同,故在此不再赘述。
图8为本发明实施例所提供的一种终端设备的结构示意图。本实施例提供的终端设备具体包括:发送模块21和接收模块22。
其中,发送模块21,用于向服务器发送第一消息请求,以使服务器对该第一消息请求所指定的资源进行处理。
本实施例中的第一消息请求同样用于指示服务器对其指定的资源进行增添、删除或修改处理,具体地,发送模块21的第一消息请求中可以包括POST、DELETE或PUT指令;另外,可以通过GET指令获取服务器中的已有资源,包括获取上述POST、DELETE和PUT指令所请求处理的结果,不需要服务器的资源进行改变。
接收模块22,用于接收服务器返回的第一消息响应,该第一消息响应用于向终端设备指示服务器已接收到发送模块21发送的第一消息请求。
该接收模块22,还用于接收服务器发送的第一处理结果,其中,该第一处理结果为服务器对第一消息请求所指定的资源进行处理所生成的。
在本实施例中,考虑到服务器对该第一消息请求所指定的资源进行处理需要一定的处理时间,即接收模块22接收服务器对该第一消息请求的处理结果需要延迟一定的时间,因此,本实施例中发送模块21向服务器发送该第一消息请求后,接收模块22可以即时接收到不包含处理结果的第一消息响应,一方面,终端设备通过该第一消息响应可以获知服务器已接收到其发送的第一消息请求,正在准备进行处理,避免了终端设备长时间未接收到服务器的响应时,对服务器的处理状态不明确的现状,提高了消息处理方法的智能性;另一方面,服务器发送该第一消息响应后,即可关闭该第一消息请求所占用的HTTP连接的资源,有利于降低服务器的资源消耗。
本实施例在具体实现中,接收模块22接收到的第一处理结果,具体携带在HTTP响应中,基于RESTful遵循的HTTP协议,可以采用GET指令取回该第一处理结果;具体地,本实施例中的发送模块21还用于向服务器发送消息获取请求,该消息获取请求包括GET指令;则接收模块22接收服务器发送的第一处理结果的具体方式为:接收服务器发送的与消息获取请求对应的消息获取响应,该消息获取响应中包括所述第一处理结果。
需要说明的是,本实施例中不限制发送模块21发送消息获取请求时间,例如可以是在其发送第一消息请求之后发送的,也可以是在发送第一消息请求之前发送的,只要服务器中存在该消息获取请求,就可以在服务器生成上述第一处理结果后,将其携带在与消息获取请求对应于的响应中,即消息获取响应中发送给终端设备。
本发明实施例提供的终端设备用于执行本发明图4所示实施例提供的资源获取方法,具备相应的功能模块,其实现原理和技术效果类似,此处不再赘述。
可选地,图8所示实施例中的第一处理结果可以是通过一个消息获取响应返回的,如上述实施例中所述的通过消息获取请求对应的消息获取响应返回该第一处理结果;另外,该第一处理结果也可以是通过多个消息获取响应返回的,在具体实现中,发送模块21发送的消息获取请求中可以包括合并标识,该合并标识指示拆分发送第一处理结果,则接收模块22接收到服务器发送的多个消息获取响应,该多个消息获取响应中一一对应的携带有处理器对第一处理结果拆分的多个部分。
进一步地,同样可以在本实施例提供的终端设备中可以设置定时器,相应地,本实施例提供的终端设备还包括:取消模块,用于在定时器预置的时间内未接收到服务器返回的与消息获取请求对应的消息获取响应,取消消息获取请求;则发送模块21还用于并向服务器发送新的消息获取请求。在本实施例的另一种可能的实现方式中,还可以在服务器中设置定时器,则接收模块22接收到服务器发送的超时提示信息,该超时提示信息为服务器在预置的时间内未向终端设备发送消息获取响应时,取消已发送的消息获取请求后发送的;从而发送模块21还用于根据超时提示信息向服务器发送新的消息获取请求。
需要说明的是,在本实施例中,可以不限制发送模块21向服务器发送的指示处理资源的HTTP请求的数量,即发送模块21还用于向服务器发送第二消息请求,以使服务器对第二消息请求所指定的资源进行处理;则接收模块22还用于接收服务器返回的第二消息响应,该第二消息响应用于向终端设备指示服务器已接收到发送模块21发送的第二消息请求;该接收模块22还用于接收服务器发送的第二处理结果,其中,该第二处理结果为服务器对第二消息请求所指定的资源进行处理所生成的。
在本实施例中,第二消息请求为服务器接收的另一个需要进行资源处理的HTTP请求,该第二消息请求同样用于指示服务器对其指定的资源进行增添、删除或修改,即该第二消息请求中同样包括POST、PUT或DELETE指令,返回的响应则为与该第二消息请求对应的第二消息响应,其中,第二消息请求的类型,和服务器对其所请求的资源的处理方式均与第一请求消息相同。
可选地,本实施例提供的终端设备,其发送模块21可以通过发送第一消息获取请求和第二消息获取请求,分别取回服务器所生成的第一处理结果和第二处理结果,具体地,接收模块22接收到的服务器发送的携带在第一消息获取响应中的第一处理结果,以及携带在第二消息获取响应中的第二处理结果。
在图8所示的另一种可能的实现方式中,发送模块21同样通过发送消息获取请求来取回第一处理结果和第二处理结果,该消息获取请求中包括合并标识;则接收模块22用于接收服务器发送的第一处理结果和第二处理结果,具体包括:当合并标识指示合并发送第一处理结果和第二处理结果时,接收到服务器发送的携带有第一处理结果和第二处理结果的消息获取响应;当合并信息指示不合并发送第一处理结果和第二处理结果时,接收到服务器发送的携带有第一处理结果的第一消息获取响应,以及携带有第二处理结果的第二消息获取响应。
本实施例中的该消息获取请求中同样包括GET指令,并且同样不限制发送模块21发送的消息获取请求的时间,只要是在服务器生成处理结果之前,向服务器发送该消息获取请求,则服务器可以将上述处理结果携带在与消息获取请求对应的消息获取响应中发送给终端设备。
需要说明的是,本实施例不限制具体由哪个消息获取请求取回第一处理结果或第二处理结果,由于多个消息获取请求通常以串行的方式发送给服务器,因此可以按照服务器接收到多个消息获取请求的顺序,将首先生成的处理结果由先接收到的消息获取请求取回;也可以设置为其它规则;还可以通过在每个消息获取请求中添加指示信息以指示取回第一处理结果或第二处理结果。
进一步地,与上述实施例类似地,本实施例中的合并标识也可以指示拆分发送第一处理结果或/和第二处理结果,该合并标识的指示内容,拆分该第一处理结果或/和第二处理结果的方式,以及取回对第一处理结果或/和第二处理结果进行拆分后的多个部分的具体方式均与上述实施例类似,再次不在赘述。
本发明实施例提供的终端设备用于执行本发明图5所示实施例提供的资源获取方法,具备相应的功能模块,其实现原理和技术效果类似,此处不再赘述。
类似地,本实施例提供的终端设备与服务器之间保持的HTTP连接的数量,同样可以通过在终端设备中预先定义请求控制信息的方式来控制,例如该HTTP连接的数量小于等于连接数量阈值,控制终端设备与服务器之间保持的HTTP连接的数量的具体方式和实现的有益效果均与上述实施例相同,故在此不再赘述。
图9为本发明实施例所提供的另一种服务器的结构示意图。本实施例提供的服务器具体包括:接收器31、发送器32和处理器33。
其中,接收器31,用于接收终端设备发送的第一消息请求,该第一消息请求用于指示服务器对其指定的资源进行处理。
本实施例中的第一消息请求同样用于指示服务器对其指定的资源进行增添、删除或修改处理,具体地,该第一消息请求中可以包括POST、DELETE或PUT指令;另外,可以通过GET指令获取服务器中的已有资源,包括获取上述POST、DELETE和PUT指令所请求处理的结果,不需要服务器的资源进行改变。
发送器32,用于向终端设备返回第一消息响应,该第一消息响应用于向终端设备指示接收器31已接收到第一消息请求。
本实施例提供的服务器在处理HTTP消息时,考虑到服务器将该第一消息请求的处理结果返回给终端设备需要延迟一定的时间,服务器接收到第一消息请求后,可以即时向终端设备返回与该第一消息请求对应的第一消息响应,一方面,向终端设备指示该服务器已接收到第一消息请求,正在准备进行处理,避免了终端设备长时间未接收到服务器的响应时,对服务器的处理状态不明确的现状,提高了消息处理方法的智能性;另一方面,服务器发送该第一消息响应后,即可关闭该第一消息请求所占用的HTTP连接的资源,有利于降低服务器的资源消耗。
处理器33,用于对发送器32接收的第一消息请求所指定的资源进行处理,生成第一处理结果。
本实施例在具体实现中,服务器返回的第一处理结果时,具体携带在HTTP响应中,基于RESTful遵循的HTTP协议,可以采用GET指令取回该第一处理结果;具体地,本实施例中的接收器31还用于接收终端设备发送的消息获取请求,该消息获取请求包括GET指令;相应地,发送器32还用于将处理器33生成的第一处理结果携带在与接收器31接收的消息获取请求对应的消息获取响应中发送给所述终端设备。
需要说明的是,本实施例中不限制终端设备发送消息获取请求时间,例如可以是在接收器31接收到第一消息请求之后发送的,也可以是在接收器31接收到第一消息请求之前发送的,只要服务器中存在该消息获取请求,就可以在处理器33生成第一处理结果后,将其携带在与消息获取请求对应于的响应中,即消息获取响应中发送给终端设备。
本发明实施例提供的服务器用于执行本发明图1所示实施例提供的消息处理方法,具备相应的实体装置,其实现原理和技术效果类似,此处不再赘述。
可选地,图9所示实施例中处理器33生成的第一处理结果可以是通过一个消息获取响应返回的,如上述实施例中所述的通过消息获取请求对应的消息获取响应返回该第一处理结果;另外,该第一处理结果也可以是通过多个消息获取响应返回的,在具体实现中,接收器31接收到的消息获取请求中可以包括合并标识;则发送器32,还用于当该合并标识指示拆分发送第一处理结果时,将第一处理结果分为多个部分,一一对应的携带在多个消息获取响应中发送给终端设备。
进一步地,同样可以在本实施例提供的服务器中设置定时器,相应的,本实施例提供的服务器中,处理器33还用于在定时器预置的时间内未向发送消息获取请求的终端设备返回消息获取响应时,取消该消息获取请求;则发送器32还用于向该终端设备发送超时提示信息,以指示该终端设备向服务器发送新的消息获取请求。在本实施例的另一种可能的实现方式中,还可以通过在终端设备中设置定时器的方式取消超时的消息获取请求,具体实现方式为:接收器31接收到终端设备发送的新的消息获取请求,该新的消息获取请求为该终端设备在预置的时间内未接收到消息获取响应时,取消已发送的消息获取请求后发送的。
需要说明的是,在本实施例中,可以不限制接收器31接收到的指示处理资源的HTTP请求的数量,即接收器31还用于接收终端设备发送的第二消息请求,该第二消息请求用于指示服务器对其指定的资源进行处理;则发送器32还用于向终端设备返回第二消息响应,第二消息响应用于向终端设备指示接收器31已接收到第二消息请求;处理器33还用于对接收器31接收的第二消息请求所指定的资源进行处理,生成第二处理结果。
在本实施例中,第二消息请求为服务器接收的另一个需要进行资源处理的HTTP请求,该第二消息请求同样用于指示服务器对其指定的资源进行增添、删除或修改,即该第二消息请求中同样包括POST、PUT或DELETE指令,返回的响应则为与该第二消息请求对应的第二消息响应,其中,第二消息请求的类型,和处理器33对其处理的方式均与第一请求消息相同。
可选地,本实施例提供的服务器,其接收器31可以通过接收第一消息获取请求和第二消息获取请求,分别返回处理器33中生成的第一处理结果和第二处理结果,具体地,发送器32将第一处理结果携带在第一消息获取响应中,将第二处理结果携带在第二消息获取响应中发送给终端设备。
在图9所示的另一种可能的实现方式中,接收器31接收的消息获取请求中包括合并标识;则发送器32返回第一处理结果和第二处理结果的具体方式可以为:当合并标识指示合并发送第一处理结果和第二处理结果时,服务器将第一处理结果和第二处理结果进行合并处理,并携带在消息获取请求对应的消息获取响应中发送给终端设备;或者,当合并标识指示不合并发送第一处理结果和第二处理结果时,服务器将第一处理结果携带在第一消息获取响应中,将第二处理结果携带在第二消息获取响应中发送给终端设备。
本实施例中的该消息获取请求中同样包括GET指令,并且同样不限制接收器31接收到消息获取请求的时间,只要是在处理器33生成处理结果前,服务器中具有消息获取请求,则发送器32可以将上述处理结果携带在与消息获取请求对应的消息获取响应中发送给终端设备。
需要说明的是,本实施例不限制具体由哪个消息获取请求取回第一处理结果或第二处理结果,由于多个消息获取请求通常以串行的方式发送给服务器,因此可以按照服务器接收到多个消息获取请求的顺序,将首先生成的处理结果由先接收到的消息获取请求取回;也可以设置为其它规则;还可以通过在每个消息获取请求中添加指示信息以指示取回第一处理结果或第二处理结果。
进一步地,与上述实施例类似地,本实施例中的合并标识也可以指示拆分发送第一处理结果或/和第二处理结果,该合并标识的指示内容,拆分该第一处理结果或/和第二处理结果的方式,以及取回对第一处理结果或/和第二处理结果进行拆分后的多个部分的具体方式均与上述实施例类似,再次不在赘述。
本发明实施例提供的服务器用于执行本发明图2和图3所示实施例提供的消息处理方法,具备相应的实体装置,其实现原理和技术效果类似,此处不再赘述。
类似地,本实施例提供的服务器与终端设备之间保持的HTTP连接的数量,同样可以通过终端设备中预先定义的请求控制信息来控制,该HTTP连接的数量小于等于连接数量阈值,控制服务器与终端设备之间保持的HTTP连接的数量的具体方式和实现的有益效果均与上述实施例相同,故在此不再赘述。
图10为本发明实施例所提供的另一种终端设备的结构示意图。本实施例提供的终端设备具体包括:发送器41和接收器42。
其中,发送器41,用于向服务器发送第一消息请求,以使服务器对该第一消息请求所指定的资源进行处理。
本实施例中的第一消息请求同样用于指示服务器对其指定的资源进行增添、删除或修改处理,具体地,发送器41的第一消息请求中可以包括POST、DELETE或PUT指令;另外,可以通过GET指令获取服务器中的已有资源,包括获取上述POST、DELETE和PUT指令所请求处理的结果,不需要服务器的资源进行改变。
接收器42,用于接收服务器返回的第一消息响应,该第一消息响应用于向终端设备指示服务器已接收到发送器41发送的第一消息请求。
该接收器42,还用于接收服务器发送的第一处理结果,其中,该第一处理结果为服务器对第一消息请求所指定的资源进行处理所生成的。
在本实施例中,考虑到服务器对该第一消息请求所指定的资源进行处理需要一定的处理时间,即接收器42接收服务器对该第一消息请求的处理结果需要延迟一定的时间,因此,本实施例中发送器41向服务器发送该第一消息请求后,接收器42可以即时接收到不包含处理结果的第一消息响应,一方面,终端设备通过该第一消息响应可以获知服务器已接收到其发送的第一消息请求,正在准备进行处理,避免了终端设备长时间未接收到服务器的响应时,对服务器的处理状态不明确的现状,提高了消息处理方法的智能性;另一方面,服务器发送该第一消息响应后,即可关闭该第一消息请求所占用的HTTP连接的资源,有利于降低服务器的资源消耗。
本实施例在具体实现中,接收器42接收到的第一处理结果,具体携带在HTTP响应中,基于RESTful遵循的HTTP协议,可以采用GET指令取回该第一处理结果;具体地,本实施例中的发送器41还用于向服务器发送消息获取请求,该消息获取请求包括GET指令;则接收器42接收服务器发送的第一处理结果的具体方式为:接收服务器发送的与消息获取请求对应的消息获取响应,该消息获取响应中包括所述第一处理结果。
需要说明的是,本实施例中不限制发送器41发送消息获取请求时间,例如可以是在其发送第一消息请求之后发送的,也可以是在发送第一消息请求之前发送的,只要服务器中存在该消息获取请求,就可以在服务器生成上述第一处理结果后,将其携带在与消息获取请求对应于的响应中,即消息获取响应中发送给终端设备。
本发明实施例提供的终端设备用于执行本发明图4所示实施例提供的资源获取方法,具备相应的实体装置,其实现原理和技术效果类似,此处不再赘述。
可选地,图10所示实施例中的第一处理结果可以是通过一个消息获取响应返回的,如上述实施例中所述的通过消息获取请求对应的消息获取响应返回该第一处理结果;另外,该第一处理结果也可以是通过多个消息获取响应返回的,在具体实现中,发送器41发送的消息获取请求中可以包括合并标识,该合并标识指示拆分发送第一处理结果,则接收器42接收到服务器发送的多个消息获取响应,该多个消息获取响应中一一对应的携带有处理器对第一处理结果拆分的多个部分。
进一步地,同样可以在本实施例提供的终端设备中设置定时器,相应地,本实施例提供的终端设备还包括处理器,用于在定时器预置的时间内未接收到服务器返回的与消息获取请求对应的消息获取响应,取消消息获取请求;则发送器41还用于并向服务器发送新的消息获取请求。在本实施例的另一种可能的实现方式中,还可以在服务器中设置定时器,则接收器42接收到服务器发送的超时提示信息,该超时提示信息为服务器在预置的时间内未向终端设备发送消息获取响应时,取消已发送的消息获取请求后发送的;从而发送器41还用于根据超时提示信息向服务器发送新的消息获取请求。
需要说明的是,在本实施例中,可以不限制发送器41向服务器发送的指示处理资源的HTTP请求的数量,即发送器41还用于向服务器发送第二消息请求,以使服务器对第二消息请求所指定的资源进行处理;则接收器42还用于接收服务器返回的第二消息响应,该第二消息响应用于向终端设备指示服务器已接收到发送模块发送的第二消息请求;该接收器42还用于接收服务器发送的第二处理结果,其中,该第二处理结果为服务器对第二消息请求所指定的资源进行处理所生成的。
在本实施例中,第二消息请求为服务器接收的另一个需要进行资源处理的HTTP请求,该第二消息请求同样用于指示服务器对其指定的资源进行增添、删除或修改,即该第二消息请求中同样包括POST、PUT或DELETE指令,返回的响应则为与该第二消息请求对应的第二消息响应,其中,第二消息请求的类型,和服务器对其所请求的资源的处理方式均与第一请求消息相同。
可选地,本实施例提供的终端设备,其发送器41可以通过发送第一消息获取请求和第二消息获取请求,分别取回服务器所生成的第一处理结果和第二处理结果,具体地,接收器42接收到的服务器发送的携带在第一消息获取响应中的第一处理结果,以及携带在第二消息获取响应中的第二处理结果。
在图10所示的另一种可能的实现方式中,发送器41同样通过发送消息获取请求来取回第一处理结果和第二处理结果,该消息获取请求中包括合并标识;则接收器42用于接收服务器发送的第一处理结果和第二处理结果,具体包括:当合并标识指示合并发送第一处理结果和第二处理结果时,接收到服务器发送的携带有第一处理结果和第二处理结果的消息获取响应;当合并信息指示不合并发送第一处理结果和第二处理结果时,接收到服务器发送的携带有第一处理结果的第一消息获取响应,以及携带有第二处理结果的第二消息获取响应。
本实施例中的该消息获取请求中同样包括GET指令,并且同样不限制发送器41发送的消息获取请求的时间,只要是在服务器生成处理结果之前,向服务器发送该消息获取请求,则服务器可以将上述处理结果携带在与消息获取请求对应的消息获取响应中发送给终端设备。
需要说明的是,本实施例不限制具体由哪个消息获取请求取回第一处理结果或第二处理结果,由于多个消息获取请求通常以串行的方式发送给服务器,因此可以按照服务器接收到多个消息获取请求的顺序,将首先生成的处理结果由先接收到的消息获取请求取回;也可以设置为其它规则;还可以通过在每个消息获取请求中添加指示信息以指示取回第一处理结果或第二处理结果。
进一步地,与上述实施例类似地,本实施例中的合并标识也可以指示拆分发送第一处理结果或/和第二处理结果,该合并标识的指示内容,拆分该第一处理结果或/和第二处理结果的方式,以及取回对第一处理结果或/和第二处理结果进行拆分后的多个部分的具体方式均与上述实施例类似,再次不在赘述。
本发明实施例提供的终端设备用于执行本发明图5所示实施例提供的资源获取方法,具备相应的实体装置,其实现原理和技术效果类似,此处不再赘述。
类似地,本实施例提供的终端设备与服务器之间保持的HTTP连接的数量,同样可以通过在终端设备中预先定义请求控制信息的方式来控制,例如该HTTP连接的数量小于等于连接数量阈值,控制终端设备与服务器之间保持的HTTP连接的数量的具体方式和实现的有益效果均与上述实施例相同,故在此不再赘述。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (16)

1.一种消息处理方法,其特征在于,包括:
服务器接收终端设备发送的第一消息请求,所述第一消息请求用于指示所述服务器对其指定的资源进行处理;
所述服务器向所述终端设备返回第一消息响应,所述第一消息响应用于向所述终端设备指示已接收到所述第一消息请求;
所述服务器对所述第一消息请求所指定的资源进行处理,生成第一处理结果。
2.根据权利要求1所述的方法,其特征在于,所述服务器接收终端设备发送的第一消息请求之后,还包括:
所述服务器接收所述终端设备发送的第二消息请求,所述第二消息请求用于指示所述服务器对其指定的资源进行处理;
所述服务器向所述终端设备返回第二消息响应,所述第二消息响应用于向所述终端设备指示已接收到所述第二消息请求;
所述服务器对所述第二消息请求所指定的资源进行处理,生成第二处理结果。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
所述服务器接收终端设备发送的消息获取请求,所述消息获取请求中包括合并标识;
当所述合并标识指示合并发送所述第一处理结果和所述第二处理结果时,将所述第一处理结果和所述第二处理结果进行合并处理,并携带在所述消息获取请求对应的消息获取响应中发送给所述终端设备;或者,
当所述合并标识指示不合并发送所述第一处理结果和所述第二处理结果时,将所述第一处理结果携带在第一消息获取响应中,将所述第二处理结果携带在第二消息获取响应中发送给所述终端设备。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述服务器接收所述终端设备发送的消息获取请求,所述消息获取请求中包括合并标识;
当所述合并标识指示拆分发送所述第一处理结果时,将所述第一处理结果分为多个部分,一一对应的携带在多个消息获取响应中发送给所述终端设备。
5.一种资源获取方法,其特征在于,包括:
终端设备向服务器发送第一消息请求,以使所述服务器对所述第一消息请求所指定的资源进行处理;
所述终端设备接收所述服务器返回的第一消息响应,所述第一消息响应用于向所述终端设备指示所述服务器已接收到所述第一消息请求;
所述终端设备接收所述服务器发送的第一处理结果,其中,所述第一处理结果为所述服务器对所述第一消息请求所指定的资源进行处理所生成的。
6.根据权利要求5所述的方法,其特征在于,所述终端设备向服务器发送第一消息请求之后,还包括:
所述终端设备向所述服务器发送第二消息请求,以使所述服务器对所述第二消息请求所指定的资源进行处理;
所述终端设备接收所述服务器返回的第二消息响应,所述第二消息响应用于向所述终端设备指示所述服务器已接收到所述第二消息请求;
所述终端设备接收所述服务器发送的第二处理结果,其中,所述第二处理结果为所述服务器对所述第二消息请求所指定的资源进行处理所生成的。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
所述终端设备向所述服务器发送消息获取请求,所述消息获取请求中包括合并标识;
当所述合并标识指示合并发送所述第一处理结果和所述第二处理结果时,所述终端设备接收到所述服务器发送的携带有所述第一处理结果和所述第二处理结果的消息获取响应;或者,
当所述合并标识指示不合并发送所述第一处理结果和所述第二处理结果时,所述终端设备接收到所述服务器发送的携带有所述第一处理结果的第一消息获取响应和携带有所述第二处理结果的第二消息获取响应。
8.根据权利要求5所述的方法,其特征在于,所述方法还包括:
所述终端设备向所述服务器发送消息获取请求,所述消息获取请求中包括合并标识,所述合并标识指示拆分发送所述第一处理结果;
所述终端设备接收所述服务器发送的多个消息获取响应,所述多个消息获取响应中一一对应的携带有所述处理器对所述第一处理结果拆分的多个部分。
9.一种服务器,其特征在于,包括:
接收模块,用于接收终端设备发送的第一消息请求,所述第一消息请求用于指示所述服务器对其指定的资源进行处理;
发送模块,用于向所述终端设备返回第一消息响应,所述第一消息响应用于向所述终端设备指示所述接收模块已接收到所述第一消息请求;
处理模块,用于对所述接收模块接收的第一消息请求所指定的资源进行处理,生成第一处理结果。
10.根据权利要求9所述的服务器,其特征在于,所述接收模块,还用于在接收到所述终端设备发送的第一消息请求之后,接收所述终端设备发送的第二消息请求,所述第二消息请求用于指示所述服务器对其指定的资源进行处理;
所述发送模块,还用于向所述终端设备返回第二消息响应,所述第二消息响应用于向所述终端设备指示所述接收模块已接收到所述第二消息请求;
所述处理模块,还用于对所述接收模块接收的所述第二消息请求所指定的资源进行处理,生成第二处理结果。
11.根据权利要求10所述的服务器,其特征在于,所述接收模块,还用于接收所述终端设备发送的消息获取请求,所述消息获取请求中包括合并标识;
则所述发送模块,还用于当所述合并标识指示合并发送所述第一处理结果和所述第二处理结果时,将所述第一处理结果和所述第二处理结果进行合并处理,并携带在所述消息获取请求对应的消息获取响应中发送给所述终端设备;或者,当所述合并标识指示不合并发送所述第一处理结果和所述第二处理结果时,将所述第一处理结果携带在第一消息获取响应中,将所述第二处理结果携带在第二消息获取响应中发送给所述终端设备。
12.根据权利要求9所述的服务器,其特征在于,所述接收模块,还用于接收所述终端设备发送的消息获取请求,所述消息获取请求中包括合并标识;则所述发送模块,还用于当所述合并标识指示拆分发送所述第一处理结果时,将所述第一处理结果分为多个部分,一一对应的携带在多个消息获取响应中发送给所述终端设备。
13.一种终端设备,其特征在于,包括:
发送模块,用于向服务器发送第一消息请求,以使所述服务器对所述第一消息请求所指定的资源进行处理;
接收模块,用于接收所述服务器返回的第一消息响应,所述第一消息响应用于向所述终端设备指示所述服务器已接收到所述发送模块发送的第一消息请求;
所述接收模块,还用于接收所述服务器发送的第一处理结果,其中,所述第一处理结果为所述服务器对所述第一消息请求所指定的资源进行处理所生成的。
14.根据权利要求13所述的终端设备,其特征在于,所述发送模块,还用于在向服务器发送第一消息请求之后,向所述服务器发送第二消息请求,以使所述服务器对所述第二消息请求所指定的资源进行处理;
所述接收模块,还用于接收所述服务器返回的第二消息响应,所述第二消息响应用于向所述终端设备指示所述服务器已接收到所述发送模块发送的第二消息请求;
所述接收模块,还用于接收所述服务器发送的第二处理结果,其中,所述第二处理结果为所述服务器对所述第二消息请求所指定的资源进行处理所生成的。
15.根据权利要求14所述的终端设备,其特征在于,所述发送模块,还用于向所述服务器发送消息获取请求,所述消息获取请求中包括合并标识;
则所述接收模块用于接收所述服务器发送的第一处理结果和第二处理结果,具体包括:当所述合并标识指示合并发送所述第一处理结果和所述第二处理结果时,接收到所述服务器发送的携带有所述第一处理结果和所述第二处理结果的消息获取响应;或者,当所述合并信息指示不合并发送所述第一处理结果和所述第二处理结果时,接收到所述服务器发送的携带有所述第一处理结果的第一消息获取响应和携带有所述第二处理结果的第二消息获取响应。
16.根据权利要求13所述的终端设备,其特征在于,所述发送模块,还用于向所述服务器发送消息获取请求,所述消息获取请求中包括合并标识,所述合并标识指示拆分发送所述第一处理结果;则所述接收模块,还用于接收所述服务器发送的多个消息获取响应,所述多个消息获取响应中一一对应的携带有所述处理器对所述第一处理结果拆分的多个部分。
CN201510108560.3A 2015-03-12 2015-03-12 消息处理方法、资源获取方法、服务器及终端设备 Active CN106034141B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510108560.3A CN106034141B (zh) 2015-03-12 2015-03-12 消息处理方法、资源获取方法、服务器及终端设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510108560.3A CN106034141B (zh) 2015-03-12 2015-03-12 消息处理方法、资源获取方法、服务器及终端设备

Publications (2)

Publication Number Publication Date
CN106034141A true CN106034141A (zh) 2016-10-19
CN106034141B CN106034141B (zh) 2019-07-23

Family

ID=57149881

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510108560.3A Active CN106034141B (zh) 2015-03-12 2015-03-12 消息处理方法、资源获取方法、服务器及终端设备

Country Status (1)

Country Link
CN (1) CN106034141B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110875952A (zh) * 2018-09-04 2020-03-10 中国移动通信有限公司研究院 一种基于物联网的数据响应处理方法及设备、存储介质
CN111800316A (zh) * 2020-07-16 2020-10-20 浙江百应科技有限公司 一种解决管线式http请求的服务器链路关闭的方法
CN111953655A (zh) * 2017-02-28 2020-11-17 华为技术有限公司 一种通信系统中服务器响应请求消息的方法及设备
CN112367387A (zh) * 2020-10-30 2021-02-12 湖北亿咖通科技有限公司 一种车联网通信方法及系统
CN114399895A (zh) * 2021-12-24 2022-04-26 北京经纬恒润科技股份有限公司 一种车用遥控器和控制器的匹配方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080225329A1 (en) * 2007-03-12 2008-09-18 Konica Minolta Business Technologies, Inc. HTTP server and program
US20110066676A1 (en) * 2009-09-14 2011-03-17 Vadim Kleyzit Method and system for reducing web page download time
CN102238227A (zh) * 2010-04-26 2011-11-09 佳能株式会社 服务器装置及终端装置
CN103986785A (zh) * 2014-06-04 2014-08-13 重庆邮电大学 一种基于restful的数据流控制方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080225329A1 (en) * 2007-03-12 2008-09-18 Konica Minolta Business Technologies, Inc. HTTP server and program
US20110066676A1 (en) * 2009-09-14 2011-03-17 Vadim Kleyzit Method and system for reducing web page download time
CN102238227A (zh) * 2010-04-26 2011-11-09 佳能株式会社 服务器装置及终端装置
CN103986785A (zh) * 2014-06-04 2014-08-13 重庆邮电大学 一种基于restful的数据流控制方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111953655A (zh) * 2017-02-28 2020-11-17 华为技术有限公司 一种通信系统中服务器响应请求消息的方法及设备
CN111953655B (zh) * 2017-02-28 2023-03-10 华为云计算技术有限公司 一种通信系统中服务器响应请求消息的方法及设备
CN110875952A (zh) * 2018-09-04 2020-03-10 中国移动通信有限公司研究院 一种基于物联网的数据响应处理方法及设备、存储介质
CN111800316A (zh) * 2020-07-16 2020-10-20 浙江百应科技有限公司 一种解决管线式http请求的服务器链路关闭的方法
CN111800316B (zh) * 2020-07-16 2021-08-13 浙江百应科技有限公司 一种解决管线式http请求的服务器链路关闭的方法
CN112367387A (zh) * 2020-10-30 2021-02-12 湖北亿咖通科技有限公司 一种车联网通信方法及系统
CN114399895A (zh) * 2021-12-24 2022-04-26 北京经纬恒润科技股份有限公司 一种车用遥控器和控制器的匹配方法及系统

Also Published As

Publication number Publication date
CN106034141B (zh) 2019-07-23

Similar Documents

Publication Publication Date Title
CN106034141B (zh) 消息处理方法、资源获取方法、服务器及终端设备
US9621641B2 (en) Predictive rendering of current content versions
KR102308269B1 (ko) 프록시 기반 네트워크 통신들에서의 제어 데이터의 전송
JP5232876B2 (ja) フィードをベースにした移動端末へのコンテンツの自動送信技術
EP2888862B1 (en) Information transmission method, apparatus, and system, terminal, and server
US8620999B1 (en) Network resource modification for higher network connection concurrence
EP3002927A1 (en) Page redirection method, routing device, terminal device and system
CN105743945B (zh) 基于切换下载源的文件下载方法及系统
US8667114B2 (en) Program update management server and program update management method
CN101741769B (zh) 一种网关和网页重定向的方法
JP2022537643A (ja) リソース購読方法、機器、サーバ及びコンピュータ記憶媒体
US9900368B2 (en) Method for optimising downloading of data
US10021207B1 (en) Architecture for proactively providing bundled content items to client devices
US20180337895A1 (en) Method for Privacy Protection
US9106596B2 (en) Method and apparatus of configuring a data broadcast service
CN111294372A (zh) 一种在代理服务器实现缓存的方法、装置及系统
Bhattacharyya et al. Constrained application protocol (CoAP) option for no server response
US20170171082A1 (en) Method and electronic device for updating client data
KR20230084188A (ko) 무선 통신 시스템에서 미션 크리티컬 서비스를 처리하는 시스템 및 방법
CN110741617A (zh) 资源更新方法、装置、计算机设备和存储介质
CN114301848B (zh) 基于cdn的通信方法、系统、设备及存储介质
US10200488B2 (en) Webpage loading method and apparatus
CN114615333B (zh) 一种资源访问请求处理方法、装置、设备及介质
US20150288734A1 (en) Adaptive leveraging of network information
KR101670699B1 (ko) 웹 페이지들 간에 통신하기 위한 방법 및 시스템

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant