信息处理装置、信息处理方法和计算机可读记录介质的制作方法

文档序号:7583672阅读:123来源:国知局
专利名称:信息处理装置、信息处理方法和计算机可读记录介质的制作方法
技术领域
本发明涉及信息处理装置、信息处理方法和计算机可读记录介质。
背景技术
近年来,使得每个用户能够通过以与个人计算机类似的方式添加应用来定制系统的移动信息终端引起了极大的关注。在此情况中,应用的示例包括由第三方供应商开发的那些应用。另一方面,每个应用和服务器正变得越来越依赖彼此,并且在许多情况中,一个客户端可以包括利用服务器执行处理的多种类型的应用。当服务器和应用使用每个用户的认证信息并且与每个用户协作时,需要每个应用提示用户输入认证信息并且存储认证信息以实现单点登录(single sign-in)。然而,该操作对于用户来说只有麻烦。此外,存在服务器将较大区域用于存储认证信息的问题,并且还存在服务器的认证信息被给予第三方供应商的安全问题。此外,每个应用单独与同一服务器通信的效率较低,并且这可能增加通信成本以及服务器的负担并且可能影响客户终端的电池寿命。例如,在日本专利申请早期公开No. 2009-218631中公开了一种用于减少通信成本和服务器负担的方法。在该通信控制方法中,网关装置被布置在网络中,并且该网关装置从客户端收集会话控制消息,生成新的消息,并且将新的消息发送给服务器,从而减少会话资源。

发明内容
然而,如日本专利申请早期公开No. 2009-218631中所公开的,将网关装置布置在客户端与服务器之间是有效的。然而,即使在这样的配置中,客户端的每个应用也必须单独与服务器通信,从而产生了该配置未减少从客户端发送的通信流量的问题。从客户端发送的该通信流量影响终端的存储器和电池、用户的通信成本等等。鉴于前面的状况,希望提供能够控制客户端与服务器之间的信息的发送和接收并且减少客户端与服务器之间的通信流量的新颖的经改进的信息处理装置、信息处理方法和计算机可读记录介质。根据本发明的一个实施例,提供了一种信息处理装置,该信息处理装置被布置在经由网络与存储了数据的服务器相连接的客户终端中,其中,该信息处理装置从客户终端中的一个或多个应用接收请求,并且控制去往/来自服务器的信息的发送和接收。该信息处理装置可以包括认证信息存储单元,用于存储用户用于访问服务器的认证信息;以及请求发送单元,用于基于由客户终端的应用给出的请求来将客户终端的用户的认证信息附加到请求中,并且将请求发送给服务器。从应用接收的请求可以包括指示发送给服务器的优先顺序的优先级信息,并且请求发送单元基于优先级信息来将请求发送给服务器。此外,请求发送单元可以使得请求组合单元将具有比优先级信息低的优先顺序的请求相组合,并且可以将经组合的请求发送给服务器。该信息处理装置可以包括请求组合单元,用于在信息处理装置从多个应用接收到去往服务器的多个请求时,通过将多个请求相组合来生成聚合请求;以及响应分离单元, 用于将由服务器给出的作为对聚合请求的答复的聚合响应分离为与各个请求相对应的响应。该信息处理装置可以包括响应累积单元,用于存储从服务器发送来的作为对由应用发送的请求的答复的响应;以及缓存判断单元,用于管理存储在响应累积单元中的响应。当缓存判断单元可以从应用接收到用于获取累积在响应累积单元中的来自服务器的响应的请求时,缓存判断单元可以从响应累积单元获取响应并且将响应发送给应用。响应累积单元可以针对所累积响应中的每个响应存储响应被存储到某日期为止的截止日期信息,并且缓存判断单元可以基于截止日期信息判断对从应用发送来的请求的响应是否要从响应累积单元被获取。该信息处理装置可以包括终端状态监视单元,用于至少确定作出请求的终端的通信环境是否良好以及剩余电池水平或剩余存储器容量。请求发送单元可以基于由终端状态监视单元提供的对作出请求的终端的监视结果来发送请求。当预定文本串被包括在从多个应用发送给服务器的请求中时,请求发送单元可以将预定文本串转换为与文本串相对应的信息,并且将请求发送给服务器。认证信息存储单元可以存储多个用户的认证信息,并且当请求发送单元接收到来自多个应用的请求时,请求发送单元可以将请求发送到服务器中的被指派给当前正登录到客户终端的用户的区域。该信息处理装置可以包括执行确定单元。当请求从应用被接收到时,执行确定单元可以基于应用和请求的内容来判断请求是否可被发送给服务器。根据本发明另一实施例,提供了一种信息处理方法,用于从经由网络与存储了数据的服务器相连接的客户终端中的一个或多个应用接收请求,并且控制去往/来自服务器的信息的发送和接收。根据本发明另一实施例,提供了一种计算机可读记录介质,该计算机可读记录介质存储了用于使计算机用作信息处理装置的程序,该信息处理装置用于从经由网络与存储了数据的服务器相连接的客户终端中的一个或多个应用接收请求,并且控制去往/来自服务器的信息的发送和接收。如上所述,本发明提供了能够控制客户端与服务器之间的信息的发送和接收并且减少客户端与服务器之间的通信流量的信息处理装置、信息处理方法和计算机可读记录介质。


图1是图示出根据本发明实施例的系统的示意配置的示意图;图2是图示出根据本实施例的客户端/服务器配置的示例的说明图;图3是图示出根据本实施例的GW应用的功能配置的框图;图4是图示出请求ID DB的示例性表配置的说明图;图5是图示出缓存DB的示例性表配置的说明图6是图示出相同请求DB的示例性表配置的说明图;图7是图示出队列DB的示例性表配置的说明图;图8是图示出认证信息DB的示例性表配置的说明图;图9是图示出当GW应用接收到来自应用的请求时在该应用与GW应用之间的信息交换的流程图;图IOA是图示出当GW应用接收到来自应用的请求时在GW应用与服务器之间的信息交换的流程图;图IOB是图示出当GW应用接收到来自应用的请求时在GW应用与服务器之间的信息交换的流程图;图11是图示出当GW应用接收到来自多个应用的请求时GW应用的示例性操作的说明图;图12是图示出请求XML的示例的说明图;图13是图示出请求XML的另一示例的说明图;图14是图示出聚合请求XML的示例的说明图;图15是图示出响应XML的示例的说明图;图16是图示出响应XML的另一示例的说明图;图17是图示出聚合响应XML的示例的说明图;图18是图示出包括缓存准许信息的响应XML的示例的说明图;图19是图示出包括请求ID的响应XML的示例的说明图;图20是图示出用于管理多个用户的认证信息的认证信息DB的示例性表配置的说明图;以及图21是图示出在多个用户处于登录状态时给出请求XML时的示例性操作的说明图。
具体实施例方式下面,将参考附图详细描述本发明的优选实施例。注意,在本说明书和附图中,用相同的标号来表示具有基本上相同的功能和结构的结构元件,并且省略对这些结构元件的重复描述。将按以下顺序作出说明。1.系统的示例性配置2.功能配置3.客户端与服务器之间的通信处理<1.系统的示例性配置>首先,将参考图1和图2说明根据本发明实施例的系统的示意配置。图1是图示出根据本实施例的系统的示意配置的示意图。图2是图示出根据本实施例的客户端/服务器配置的示例的说明图。在根据本实施例的系统中,一个或多个客户终端1和用于向每个客户终端1提供数据的服务器2经由网络10相连。例如,如图1所示,数据同步系统可以被构成。在该数据同步系统中,四个客户终端IA至ID与服务器2相连。客户终端1和服务器2可以无线地或有线地彼此通信。客户终端IA至ID的用户可以是不同用户或者可以是相同用户。客户终端1是可从服务器2获取所需数据的信息处理终端。例如,客户终端1可以是便携式电话、诸如PDA(个人数字助理)之类的通信终端、计算机、电视接收器等。客户终端1使用从服务器2获得的数据来实现应用的功能。服务器2存储数据,并且响应于客户1给出的请求来提供数据。假设根据本实施例的客户终端1是可以针对每个用户通过自由添加应用而被定制化的终端。这些应用通过与服务器通信来实现其功能。不仅提供了服务器2的供应商而且第三方供应商可以通过利用服务器提供的API (应用程序接口)来开发这些应用。根据本实施例的客户终端1和服务器2可以如图2所示那样彼此通信。例如,诸如应用A、应用B、应用C和应用D之类的多个应用被安装到用户B的客户终端IB中。每个应用可以经由网络10使用服务器2的功能,以将其功能提供给客户终端1B。因此,每个应用需要与服务器2通信以从服务器2接收必要的信息,从而实现该应用的功能。服务器2是用于向注册用户提供不同服务的服务器。当用户从服务器2接收服务时,该用户将通过用户账户被认证。在此情况中,根据本实施例的客户终端IB包括用于代表应用来访问服务器2的网关应用(以下称为“GW应用”)100。在GW应用100中,认证信息DB 146存储GW应用100用来代表应用A至D访问服务器2的认证信息。例如,在如图 2所示的由用户B使用的客户终端IB中,GW应用100的认证信息DB 146存储了用户B的认证信息。当GW应用100从应用接收到代表该应用访问服务器2的请求时,Gff应用100将用户B的认证信息发送给服务器2。然后,当GW应用100通过服务器2的认证时,Gff应用 100可以访问用户区域B,在用户区域B中,服务器2存储了提供给用户B的信息。在此状态中,应用可以从服务器2接收用于功能的执行的信息。在本实施例中,客户终端1的GW应用100存储用于客户端与服务器之间的通信的认证信息,并且GW应用100代表各个应用执行访问处理以访问服务器2。GW应用100还可以控制去往/来自服务器2的信息的发送和接收,以高效地执行客户端与服务器之间的通信。因此,可以减少客户端与服务器之间的通信流量,并且可以防止认证信息被泄露到外面。接下来,下面将说明布置在客户终端1中的GW应用100的配置以及客户端与服务器之间利用GW应用100的通信处理。<2.功能配置>首先,将参考图3说明根据本实施例的GW应用100的功能配置。图3是图示出根据本实施例的GW应用100的功能配置的框图。如上所述,GW应用100代表安装在客户终端1中的应用来访问服务器2。如图3 所示,GW应用100包括应用输入/输出接口单元110、数据分析单元120、请求/响应转换单元130以及服务器发送/接收接口单元140。应用输入/输出接口单元110是用于在各个应用与GW应用100之间发送和接收信息的接口。应用输入/输出接口单元110包括请求输入单元112和响应输出单元114。 请求输入单元112向数据分析单元120输出从应用接收的对服务器2的访问请求。响应输出单元114向各个应用通知由数据分析单元120给出的服务器2的响应。数据分析单元120生成并处理在各个应用与服务器2之间传输的信息。数据分析单元120包括应用密钥认证单元121、请求ID转换单元122、缓存判断单元123、相同请求存储单元124、发送请求存储单元125和终端状态监视单元126。应用密钥认证单元121判断从各个应用发送来的请求通信是否被接受。当每个应用向服务器2发送请求时,应用不仅将请求而且将应用密钥发送给GW应用100。应用密钥是由服务器2的开发商发布的信息。经核准之后,应用密钥以及表示可用API级别的数据被发布给每个应用。此数据被附接有服务器2的开发商的认证码,以使得服务器2的开发商以外的开发商无法获得该数据的内容。另一方面,GW应用100可以获取该数据的内容,并且可以通过参考应用密钥DB来判断从每个应用发送来的应用密钥是否被授权向服务器2发出请求。应用密钥DB由服务器2更新,并且应用密钥DB存储被准许或被禁止与服务器2通信的应用的应用密钥的列表。应用密钥认证单元121基于存储在应用密钥DB中的信息来检查数据的安全级别,并且判断是否可以以调用了 GW应用100的应用的安全级别来发送从该应用发送来的请求的内容。当应用密钥认证单元121判定请求可以被发送时,应用密钥认证单元121将来自应用的请求发送给发送请求存储单元125。另一方面,当应用密钥认证单元121判定请求不能被发送时,应用密钥认证单元121经由应用输入/输出接口单元110将指示请求的发送被拒绝的内容通知给调用了 GW应用100的应用。请求ID转换单元122将表示在客户端与服务器之间被频繁发送的请求的请求XML 转换为该请求XML独有的请求ID,并且反之亦然。请求ID转换单元122将该请求XML和该请求ID按照使请求XML和请求ID彼此相关联的方式存储在请求ID DB中。例如,如图 4所示,请求ID DB可被构成为存储请求XML (或ID) 1221和请求ID 1222的表。当请求ID转换单元122从应用接收到在客户端与服务器之间被频繁发送的请求的传输时,请求ID转换单元122将该请求转换为请求ID并且将该请求ID发送给服务器2。 通过该转换,请求在被转换为大小比请求XML小的数据之后被发送给服务器2。因此,可以减小通信负担。另一方面,当从服务器2发送来的响应包括请求ID时,请求ID转换单元 122参考请求ID DB,并将请求ID转换为与该请求ID相对应的请求XML。缓存判断单元123判断缓存准许信息是否包括在从服务器2发送来的响应中。当缓存判断单元123判定缓存准许信息包括在该响应中时,缓存判断单元123将经准许的请求XML、响应XML、其缓存的截止日期存储到缓存DB中。例如,如图5所示,缓存DB可被构成为存储经准许请求XML (或ID) 1231 J^SXML 1232以及其缓存的截止日期1233的表。如上所述,从服务器2发送来的响应信息被存储到缓存DB中。因此,当GW应用100从应用接收到相同请求时,GW应用100可以参考该缓存DB并且相应地作出响应。在这样的情况中, 由于无需与服务器2通信,因此可以减小通信负担。当相同请求存储单元124从应用接收到已经存储在GW应用100的队列DB中的请求时,相同请求存储单元1 存储并管理用于标识已发送了该请求的应用的信息。相同请求存储单元IM将发送了正关注请求的应用的应用ID与队列索引号相关联,并且将应用ID 和队列索引号存储到相同请求DB中,该队列索引号包括当前被存储在队列DB中的关于与正关注请求相同的请求的传输的信息。例如,如图6所示,相同请求DB被构成为存储队列索引号1241和应用ID 1242的表。如上所述,相同请求存储单元IM管理向服务器2发送相同请求的应用。因此,相同请求存储单元124防止了相同请求被多次发送给服务器2,从而减小了通信负担。发送请求存储单元125存储并管理发送给服务器2的请求。发送请求存储单元 125使队列DB存储由应用密钥认证单元121确定为准备发送的请求。例如,如图7所示,队列DB可被构成为存储队列索引号1251、应用ID 1252、优先级1253和请求XML 1254的表。 队列索引号1251是表示请求被记录在队列DB中的顺序的编号。应用ID 1252是每个应用独有的ID,其标识出已发送该请求的应用。优先级1253是表示请求被执行的优先顺序的值。当优先级1253具有较大值时, 优先级1253意味着正被关注的请求将急需被执行。当优先级等于或小于零时,该优先级意味着不必实时地执行该请求。例如,在图7中其队列索引号1251为“1”、“2”和“3”的请求不必实时地被执行。优先级可以在每个应用发送请求时被设置。替代地,优先级可由应用预先设置。另外,替代地,优先级可以根据将被执行的API来确定。存储在队列DB中的请求基于终端状态监视单元126所作的判断而按顺序被发送给服务器2。终端状态监视单元126检查客户终端1的通信环境。例如,终端状态监视单元1 检查客户终端1的剩余电池水平、已使用存储器大小以及无线通信的信号强度,并且确定可被发送给服务器2的数据量。然后,终端状态监视单元1 根据客户终端1的通信环境来确定将发送给服务器2的数据量。在终端状态监视单元1 所确定的数据量内的请求从队列DB中被选出,并被发送给服务器2。请求/响应转换单元130是用于转换由数据分析单元120生成的请求以及从服务器2接收的响应的格式的功能单元。请求/响应转换单元130包括请求组合单元132和响应分离单元134。请求组合单元132合并由数据分析单元120给出的请求,并且将经合并的请求输出给服务器发送/接收接口单元140。响应分离单元134通过服务器发送/接收接口单元140来接收服务器2的响应,分离该响应,并且将分离出的响应输出给数据分析单元 120。服务器发送/接收接口单元140是用于在服务器2与GW应用100之间发送和接收信息的接口。服务器发送/接收接口单元140包括请求发送单元142和响应接收单元 144。请求发送单元142将请求/响应转换单元130给予的请求发送给服务器2。此外,请求发送单元142具有用于存储用户的认证信息的认证信息DB 146。响应接收单元144将从服务器2接收的响应输出给请求/响应转换单元130。例如,如图8所示,布置在服务器发送/接收接口单元140中的认证信息DB 146可被构成为用于存储用户ID 1461、客户端ID 1462、口令1463和服务器URL 1464的表。用户ID 1461是每个用户独有的用于标识该用户的ID。客户端ID 1462是用于标识服务器 2所确定的客户终端1的ID。口令1463由服务器2确定,并且是与客户端ID相关联的信息。服务器URL 1464是客户终端1用来对服务器2中的被指派给客户终端1的区域执行 API的URL。存储在认证信息DB 146中的信息由GW应用100统一管理,并且以不能被除该 GW应用以外的客户终端1的应用参考的格式被存储。如上所述,每个应用的认证信息未存储在该应用本身中而是存储在GW应用100 中。因此,每个应用在不依靠GW应用100的情况下无法访问服务器2。以上说明了根据本实施例的GW应用100的功能配置。<3.客户端与服务器之间的通信处理〉
接下来,将参考图9至图11说明经由根据本实施例的GW应用100的客户端与服务器之间的通信处理。图9是图示出当GW应用100接收到来自应用的请求时在该应用与 GW应用100之间的信息交换的流程图。图IOA和IOB是各自图示出当GW应用接收到来自应用的请求时在GW应用100与服务器2之间的信息交换的流程图。图11是图示出当GW 应用接收到来自多个应用的请求时GW应用100的示例性操作的说明图。[由应用和GW应用执行的信息处理]上面示出的客户端与服务器之间的通信处理是由安装在客户终端1中的应用执行的处理,以通过与服务器2协作来提供功能。该处理如下这样来启动。首先,如图9所示, 每个应用将针对服务器2的请求发送给GW应用100,以执行服务器2的API。Gff应用100 接收来自每个应用的请求(步骤S100)。服务器2的API如下这样来执行。客户端ID和口令被设置作为客户端URL的头部,并且服务器2的API接收XML文本(请求XML),该XML 文本是由客户终端1的用户希望使用的服务器2的API名称以及其自变量(argument)构成的。这样的请求XML由每个应用生成,并且例如可被写为如图12和图13所示的那样。例如,如图12所示的请求XML通知了将被执行的API名称“应用1”以及自变量 X。另一方面,图13所示的请求XML通知了将被执行的API名称“应用2”以及自变量y、z。 请求可以是如上面所说明的XML格式的文本,或者可以使用其它数据交换格式。例如,在图11所示的示例中,步骤SlOO的处理对应于从客户终端(例如用户B的客户终端1B)的应用组中的应用向GW应用100发送请求XML的处理。接收到该请求XML 的GW应用100的请求输入单元112将该请求XML发送给应用密钥认证单元121。接下来,应用密钥认证单元121判断所接收的请求XML是否将被发送给服务器 2 (步骤S102)。应用密钥认证单元121基于从应用接收的应用密钥并且基于请求的内容来判断发送了该请求的应用是否被允许传输请求。当将要发送的请求被确定为是从不满足必要安全级别的应用发送来的时,应用密钥认证单元121判定该请求不能被发送给服务器2, 并且应用密钥认证单元121向发送了该请求的应用通知安全错误(步骤S104)。另一方面,当应用密钥认证单元121检查从应用接收的数据的安全级别并且基于请求的内容判定该请求可以以发送了该请求的应用的安全级别被发送时,应用密钥认证单元121使得缓存判断单元123判断在缓存DB中是否存储了该请求(请求XML)的内容。换言之,缓存判断单123利用从应用密钥认证单元121通知来的请求XML来查询缓存DB (步骤S106),并且判断该缓存DB是否具有该请求XML的响应信息(步骤S108)。当缓存判断单元123在步骤S108中判定缓存DB具有该请求XML的响应信息时, 缓存判断单元123检查与该请求XML相对应的缓存的截止日期,并且判断当前日期是否在该截止日期之后(步骤S110)。当缓存判断单元123在步骤SllO中判定当前日期未在缓存的截止日期之后时,缓存判断单元123使得响应输出单元114将作为该请求XML的答复的响应信息(响应XML)发送给发送了该请求的应用(步骤S112)。另一方面,当在步骤SllO中确定当前日期在缓存的截止日期之后时,缓存判断单元123再次访问服务器2以获取信息。在此情况中,首先,缓存判断单元123从缓存DB中删除与该请求XML相对应的缓存信息(步骤S114)。然后,在步骤S116,请求ID转换单元 122基于通过利用该请求XML查询请求ID转换单元122的请求ID DB而获得的结果,来判断该请求ID DB是否具有与正关注的请求XML相对应的请求XML (步骤Sl 16)。
当该请求ID DB被确定为具有相对应的请求XML时,请求ID转换单元122将请求 XML转换为请求ID (步骤Sl 18)。另一方面,当该请求ID DB被确定为不具有相对应的请求 XML时,请求ID转换单元122在不将请求XML转换为请求ID的情况下前进到步骤S120的处理。在步骤S120,发送请求存储单元125利用该请求XML查询队列DB。结果,作出关于相同请求是否已被存储在队列DB中的判定。当在步骤S120中该队列DB被确定为具有与正关注的请求XML相同的请求XML时, 发送请求存储单元125使得相同请求存储单元IM将表示正关注的请求XML的发送处理的队列索引号以及正关注请求XML从其被读出的应用的应用ID存储在相同请求DB中(步骤 S122)。另一方面,当在步骤S120中该队列DB被确定为不具有与正关注的请求XML相同的请求XML时,发送请求存储单元125将该请求、优先级以及应用ID存储到队列DB中(步骤 S124)。以上说明了当GW应用100接收到来自应用的请求时在该应用与GW应用100之间
的信息交换。[由服务器和GW应用执行的信息处理]接下来,将参考图IOA和图IOB说明GW应用100与服务器2之间的信息交换。首先,GW应用100查询存储了将要发送给服务器2的请求的队列DB,以标识出优先级大于零的请求(步骤S200)。步骤S200被执行来提取出要被实时地执行的请求,并且使这些请求优先于其它请求被发送。然后,判断是否存在优先级大于零的任何请求(步骤S202)。当判定存在优先级大于零的请求时,终端状态监视单元126判断客户终端1的通信环境的状态是否良好(步骤S204)。在步骤S204,作为通信环境的状态的无线电波环境被检查。当无线电波环境良好时,即使发送数据的量较大,通信错误的概率也较低。因此,当无线电波环境良好时,从队列 DB获取y条或更少的请求(步骤S210),并且这些请求被用作去往服务器2的发送候选。另一方面,当无线电波环境不好时,仅具有高优先级的请求被用作去往服务器2的发送候选。当在步骤S202中未提取出具有高优先级的请求时,终端状态监视单元1 检查客户终端1的通信环境是否良好(步骤S206)。在此情况中,终端状态监视单元1 检查作为通信环境的状态的已使用存储器大小、剩余电池水平以及无线电波环境。当在可用存储器大小较小时执行通信时,用户在操作客户终端1时将感觉到不舒适的操作感。当剩余电池水平不足时,最好避免低优先等级的通信以节省电池。因此,具有低优先级的请求不被发送给服务器2,并且处理终止,以便优先维持操作客户终端1的操作感并节省电池。另一方面,通信环境良好时,存储在队列DB中的请求数目被与开始请求发送时所存储的请求数目 (阈值χ)相比较,以判断请求的发送是否将开始(步骤S208)。通常,多个请求一次被发送。因此,当存储在队列DB中的请求的数目变得多于预定数目(阈值X)时,开始向服务器2发送请求。换言之,在步骤S208中,判断队列DB是否存储了与开始请求发送时的请求数目一样多的请求。当在步骤S208中存储在队列DB中的请求的数目等于或少于阈值χ时,请求不被发送给服务器2,并且处理终止。另一方面,当存储在队列DB中的请求的数目多于阈值χ时,y条或更少的请求从队列DB中被获取,并被用作发送候选(步骤S210)。在步骤S210中从队列DB获取的最大的请求数目是在后面将说明的步骤S212中合并的最大请求数目。发送请求存储单元125从存储在队列DB中的所有请求中获取y条请求,并且将所获取的请求输出给请求组合单元132。步骤S208中使用的阈值χ和步骤S210中使用的请求数目y可以根据用户设置或终端的状态来按需改变。因此,可以根据通信环境以及客户终端1和服务器2的状态来优化通信状态。当无线电波的状态较差或者存在大量具有高优先级的请求的数据时,可从通信候选中排除具有低优先级的请求,以降低具有高优先级的请求的通信错误的概率。当请求组合单元132从发送请求存储单元125接收到存储在队列DB中的一个或多个请求时,请求组合单元132判断是否已接收到多个请求。然后,当多个请求已被接收到时,这些请求被组合,并且新请求被生成(步骤S212)。例如,当仅存在一个将要发送给服务器2的请求时,诸如图12和图13所示的请求XML不经转换地被发送给服务器2。替代地, 其被转换为请求ID,并且该请求ID被发送给服务器2。另一方面,当存在多个将要发送给服务器2的请求时,XML的层级结构可被用来将多个API写入一个请求XML中并且仅通过一次通信将该请求XML发送给服务器。例如,图12和图13所示的两个请求XML被发送给服务器2。在此场合中,例如,可以如图14所示那样来写这两个请求XML,其中,图12的请求XML被写为首先执行的API,并且图13的请求XML被写为随后执行的API。因此,可以减少与服务器2通信的次数。当多个请求被发送给服务器2时,请求组合单元132通过组合这些请求XML来生成请求XML (聚合请求XML),并且将所生成的请求XML输出到请求发送单元142。然后,请求发送单元142 将该请求发送(递送)给服务器2 (步骤S214)。此后,当服务器2接收到该请求时,服务器2分析请求XML以找出要执行的命令, 并且对由客户URL指示的用户区域执行该命令。然后,服务器2将表示该执行结果的XML 格式的文本作为响应XML发送给客户终端1的GW应用100的响应接收单元144。响应接收单元144将响应XML输出给响应分离单元134。当响应XML包括针对多个请求XML的响应时,响应分离单元Π4将该响应XML分离为多个响应(步骤S216)。在此情况中,例如,从服务器2发送来的响应XML被写为如图15和图16所示那样。 图15所示的响应XML是对图12的请求XML的响应,并且图16所示的响应XML是对图13 的请求XML的响应。响应XML包括关于应用所请求的API是否成功被执行的信息,并且还包括执行结果。例如,当如图14所示的通过组合多个请求XML而生成的聚合请求XML被发送给服务器2时,如图17所示的包括对这些请求XML的响应的响应XML被接收。图17的响应XML包括关于第一 API是否成功被执行的信息以及其执行结果,并且还包括关于第二 API是否成功被执行的信息以及其执行结果。如上所述,当响应XML包括对多个请求XML的响应时,响应分离单元134将该响应XML分离为答复各个请求XML的个别响应XML。分离出的响应XML被输出给数据分析单元120。从服务器2接收的响应XML不仅包括API的执行结果,而且例如还包括关于对请求的响应是否可被缓存的信息以及关于请求ID是否可被附加到该请求XML的信息。数据分析单元120分析上面的信息以执行处理,以用于在GW应用100随后从应用接收到请求时减少服务器2的通信负担。首先,数据分析单元120的缓存判断单元123判断对请求的响应是否可被缓存 (步骤S218)。缓存判断单元123检查响应XML是否包括允许缓存的准许信息。当响应XML被确定为包括准许信息时,该响应XML被缓存。当该响应XML被确定为不包括准许信息时, 该响应XML不被缓存。图18图示出了包括缓存准许信息的响应XML的示例。如图18所示, 缓存准许信息例如是缓存的截止日期。如果该截止日期被包括在响应XML中,则这意味着缓存被准许。如上所述,接收到包括缓存准许信息的响应XML的缓存判断单元123使得缓存DB 存储允许被缓存的请求XML、响应XML以及缓存的截止日期(参见图幻(步骤S220)。在此场合中,在对响应XML的请求不是以XML格式来写的而是作为请求ID被给出时的情况中, 请求ID DB (图4)被参考,并且请求ID被转换为请求XML。然后,转换后的请求XML被记录到缓存DB中。在步骤S218中响应XML被确定为不包括缓存准许信息的情况中,缓存不被准许。因此,针对该请求XML的响应XML不被记录到缓存DB中。然后,类似于步骤S218,请求ID转换单元122判断服务器2给出的响应XML是否包括请求ID (步骤S22》。请求ID是被用来取代在应用与服务器2之间被频繁交换的请求 XML的信息,以减小与服务器2的通信负担。当请求ID转换单元122确定服务器2给出的响应XML包括请求ID时,请求ID转换单元122将该请求ID以及与该请求ID相对应的请求XML记录到请求ID DB中(参见图4)(步骤S224)。图19示出了包括请求ID的响应XML的示例。如图19所示,请求ID作为由服务器2指定的信息被写入在响应XML中。如上所述,请求ID转换单元122将包括在响应XML 中的请求ID记录到请求ID DB中。因此,当请求ID转换单元122此后从应用接收到相同请求时,请求ID转换单元122可以将该请求转换为该请求ID并且将请求ID发送给服务器 2。当在步骤S222中响应XML被确定为不包括请求ID时,不存在与请求XML相对应的请求 ID,因此请求ID不被记录到请求ID DB中。此外,相同请求存储单元IM判断是否存在发送了与该请求XML相同的请求的另一客户终端1 (步骤。相同请求存储单元IM参考相同请求DB来判断该相同请求DB 是否具有与该请求XML的发送处理相关联的队列索引号。然后,当该相同请求DB具有相同队列索引号时,与该队列索引号相关联的应用ID被添加到响应XML的输出目的地中(步骤 S228) 0然后,相同请求存储单元1 从相同请求DB中移除已执行的索引号(步骤S230)。当相同请求存储单元IM在步骤中判定不存在发送了与该请求XML相同的请求的其它客户终端1时,则不执行步骤和S230的处理,而执行步骤S232的处理。当步骤S218至S230中对响应XML的分析结束时,数据分析单元120使得响应输出单元114将该响应XML发送给发送了请求的应用(步骤S232)。此后,发送请求存储单元125从队列DB中移除已执行的队列索引号以及与已执行队列索引号相关联的信息(步骤 S234)。如上所述,客户端与服务器如图9至图11所示那样彼此通信。因此,在过去,当安装在客户端中的应用利用需要每个用户的认证信息的服务器的API来提供功能时,需要每个应用提示用户输入认证信息并且存储该认证信息。这迫使用户执行麻烦的操作,并且服务器中存在用于存储认证信息的多个部分。此外,用户必须将服务器中的认证信息给予第三方供应商,从而产生了安全问题。另外,多个应用单独与同一服务器通信是效率低下的。 因此,这增加了服务器的负担和通信成本,并且影响客户端的电池寿命。为了缓解上面的问题,可以使用根据本实施例的GW应用,以使得服务器可以在不将用户的认证信息泄露给第三方供应商的情况下提供API。此外,客户终端内的请求的内容可以被组合以节省会话资源并减少服务器的通信流量。用户还可以享受的优点在于认证信息得到了保护、无需用户在每次使用所支持应用时都要登录服务器,以及操作根据终端的电池和存储器来被执行。因此,用户可以舒适地使用应用。由于从客户端发送的通信流量被减少,因此用户可以节省通信费用。生成应用的第三方供应商也可以享受的优点在于第三方供应商不必学习用于与服务器通信的代码以及用于存储认证信息的代码,因此, 第三方供应商可以容易地开发应用。通常,用于从队列DB获取请求以及与服务器2通信的处理通过多线程被并行地处理。这是因为单线程无法应对如下情形,其中,GW应用100在接收到具有高优先级的请求的同时GW应用100正一次性地向服务器2发送多个经组合的请求。随着线程数目的增加, 性能会提高,但是存储器和电池被极大地消耗。因此,GW应用100可以根据客户终端1的剩余存储器容量和已使用电池水平来动态改变线程的数目。尽管除GW应用100以外的应用不能参考存储在GW应用100的认证信息DB中的数据,然而每个应用可能希望向请求XML中输入数据。在这样的情况中,GW应用100向每个应用提供了一定的文本串,该文本串将自动地被GW应用100的认证信息DB 146的数据取代。当每个应用利用认证信息DB 146的数据来作出请求XML时,该应用在将被认证信息 DB 146的数据取代的部分写入预定文本串。当GW应用100接收到该请求时,请求发送单元142用认证信息DB 146中的所希望数据取代该文本串。因此,认证信息DB 146的数据可由每个应用使用,而认证信息DB146的数据不会被除GW应用100以外的应用泄露。此外,如图20所示,在GW应用100中,不仅一个用户的认证信息而且许多用户的认证信息可以被管理在认证信息DB 146中。图20是用于管理多个用户的认证信息的认证信息DB 146的示例性表配置。此外,每个用户的状态,例如登入和退出,可以由GW应用100 提供的API切换。图21是在多个用户处于登录状态时给出请求XML时的示例性操作。如图21所示, 当GW应用100从每个应用接收到请求XML时,Gff应用100利用当前已登录用户的认证信息来将请求发送给服务器。在GW应用100被配置为使得多个用户处于登录状态的情况中, Gff应用100执行如下处理。当GW应用100从每个应用接收到请求XML时,Gff应用100使用每条认证信息并且对服务器2中的每个用户的区域执行由请求XML指示的API。GW应用 100将响应组合为一个响应XML,并且将该响应XML返回给发送了请求的应用。本领域的技术人员应当明白,可以根据设计要求和其它因素进行各种修改、组合、 子组合和变更,只要它们在所附权利要求或其等同物的范围之内。例如,在上面的实施例中,GW应用100将认证信息附加到应用给出的请求中,并且将具有认证信息的请求发送给服务器2。然而,本发明不限于此示例。客户终端1中的应用所请求的服务器2的API中的一些API不需要用户的认证信息。例如,GW应用100可以将多个用户给出的多个应用的请求相组合,并且可以对服务器2的公共区域而非用户的私有区域执行API。因此,本发明的GW应用100控制通信以便在将来自多个应用的请求相组合时能高效地与服务器2通信。本申请包含与2010年2月18日向日本专利局提交的日本优先专利申请JP 2010-033550中公开的主题有关的主题,该申请的全部内容通过引用结合于此。
权利要求
1.一种信息处理装置,所述信息处理装置被布置在经由网络与存储了数据的服务器相连接的客户终端中,其中,所述信息处理装置从所述客户终端中的一个或多个应用接收请求,并且控制去往/来自所述服务器的信息的发送和接收。
2.根据权利要求1所述的信息处理装置,包括认证信息存储单元,用于存储用户用于访问所述服务器的认证信息;以及请求发送单元,用于基于由所述客户终端的应用给出的请求来将所述客户终端的用户的认证信息附加到请求中,并且将请求发送给所述服务器。
3.根据权利要求2所述的信息处理装置,其中,从应用接收的请求包括指示发送给所述服务器的优先顺序的优先级信息,并且所述请求发送单元基于所述优先级信息来将请求发送给所述服务器。
4.根据权利要求1所述的信息处理装置,包括请求组合单元,用于在所述信息处理装置从多个应用接收到去往所述服务器的多个请求时,通过将所述多个请求相组合来生成聚合请求;以及响应分离单元,用于将由所述服务器给出的作为对所述聚合请求的答复的聚合响应分离为与各个请求相对应的响应。
5.根据权利要求4所述的信息处理装置,其中,所述请求发送单元使得所述请求组合单元将具有比所述优先级信息低的优先顺序的请求相组合,并且将经组合的请求发送给所述服务器。
6.根据权利要求1所述的信息处理装置,包括响应累积单元,用于存储从所述服务器发送来的作为对由应用发送的请求的答复的响应;以及缓存判断单元,用于管理存储在所述响应累积单元中的响应;其中,当所述缓存判断单元从应用接收到用于获取累积在所述响应累积单元中的来自所述服务器的响应的请求时,所述缓存判断单元从所述响应累积单元获取响应并且将响应发送给应用。
7.根据权利要求6所述的信息处理装置,其中,所述响应累积单元针对所累积响应中的每个响应存储响应被存储到某日期为止的截止日期信息,并且所述缓存判断单元基于所述截止日期信息判断对从应用发送来的请求的响应是否要从所述响应累积单元被获取。
8.根据权利要求1所述的信息处理装置,还包括终端状态监视单元,用于至少确定作出请求的终端的通信环境是否良好以及剩余电池水平或剩余存储器容量,其中,所述请求发送单元基于由所述终端状态监视单元提供的对作出请求的终端的监视结果来发送请求。
9.根据权利要求1所述的信息处理装置,其中,当预定文本串被包括在从多个应用发送给所述服务器的请求中时,所述请求发送单元将所述预定文本串转换为与所述文本串相对应的信息,并且将请求发送给所述服务
10.根据权利要求1所述的信息处理装置,其中,所述认证信息存储单元存储多个用户的认证信息,并且当所述请求发送单元接收到来自多个应用的请求时,所述请求发送单元将请求发送到所述服务器中被指派给当前正登录到所述客户终端的用户的区域。
11.根据权利要求1所述的信息处理装置,还包括 执行确定单元,其中,当请求从应用被接收到时,所述执行确定单元基于应用和请求的内容来判断请求是否可被发送给所述服务器。
12.一种信息处理方法,用于从经由网络与存储了数据的服务器相连接的客户终端中的一个或多个应用接收请求,并且控制去往/来自所述服务器的信息的发送和接收。
13.一种计算机可读记录介质,所述计算机可读记录介质存储了用于使计算机用作信息处理装置的程序,所述信息处理装置用于从经由网络与存储了数据的服务器相连接的客户终端中的一个或多个应用接收请求,并且控制去往/来自所述服务器的信息的发送和接
全文摘要
本发明公开了信息处理装置、信息处理方法和计算机可读记录介质。根据本发明的信息处理装置被布置在经由网络与存储了数据的服务器相连的客户终端中,其中,该信息处理装置从客户终端中的一个或多个应用接收请求,并且控制去往/来自服务器的信息的发送和接收。该信息处理装置包括认证信息存储单元,用于存储用户用于访问所述服务器的认证信息;以及请求发送单元,用于基于由客户终端的应用给出的请求来将客户终端的用户的认证信息附加到请求中,并且将请求发送给服务器。
文档编号H04L12/56GK102164120SQ20111003764
公开日2011年8月24日 申请日期2011年2月11日 优先权日2010年2月18日
发明者园田修平, 河内勉, 高田昌幸 申请人:索尼公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1