一种信息处理方法及服务器、计算机存储介质与流程

文档序号:16070099发布日期:2018-11-24 13:06阅读:199来源:国知局
本发明涉及通讯技术,尤其涉及一种信息处理方法及服务器、计算机存储介质。
背景技术
:随着互联网技术的发展,智能终端的大量普及,各种应用,各种生活服务为用户提供了各种使用上的便利。用户通过终端上的应用来执行终端与服务器间信息处理的过程中,能实现订阅服务、支付服务等各种功能。形象的说,用户拿出终端,就可以借助终端上的应用来订酒店,买机票,缴纳水、电、煤气费等等,这些生活服务中也包括挂号服务。用户可以通过终端接入挂号平台来实现挂号服务,该挂号平台可以采用服务器集群来实现。终端发起请求后,通常会针对该请求返回多个与挂号平台相关的第三方信息,比如,与挂号平台进行资源交互的多家挂号信息合作方提供的信息,包括某医院科室下某位医生的排班信息等号源资源。现有技术中,是将多个挂号信息合作方提供的第三方信息统一反馈给用户,由用户从中自行选择。考虑到现在号源资源是非常紧张的,由用户自行选择势必会占用大量的处理时间,而处理时间越长,处理效率越低,导致用户无法及时挂上号。且,如果用户选择的号源信息不精准,还会增加终端与挂号平台的交互次数,不仅终端或挂号平台单机的处理效率低下,由终端和挂号平台构成的整体系统,其处理效率也低下。然而,相关技术中,对于该问题,尚无有效解决方案。技术实现要素:有鉴于此,本发明实施例提供了一种信息处理方法及服务器、计算机存储介质,至少解决了现有技术存在的问题。本发明实施例提供一种信息处理方法,所述方法包括:接收第一请求,所述第一请求中携带挂号需求信息;将所述挂号需求信息转发给至少两个服务提供端,得到至少两个服务提供端反馈的挂号资源;从所述第一请求中解析出第一标识信息;提取在终端与服务提供端间建立的映射关系;若从所述映射关系中查询到所述第一标识信息,则存在历史预约记录;根据所述映射关系和/或所述历史预约记录从至少两个服务提供端中选择出一个目标服务提供端,将所述目标服务提供端反馈的挂号资源封装到第一请求响应中,发送所述第一请求响应给终端。上述方案中,根据所述映射关系从至少两个服务提供端中选择出一个目标服务提供端,包括:从所述至少两个服务提供端反馈的挂号资源中分别解析出第一资源标识信息至第i资源标识信息,所述i为大于1的正整数;所述第一标识信息和所述第一资源标识信息构成第一映射,当所述第一映射存在于所述映射关系中时,将与所述第一资源标识信息对应的服务提供端选定为所述目标服务提供端。上述方案中,根据所述映射关系和所述历史预约记录从至少两个服务提供端中选择出一个目标服务提供端,包括:从所述至少两个服务提供端反馈的挂号资源中分别解析出第一资源标识信息至第i资源标识信息,所述i为大于1的正整数;在所述映射关系中,存在由所述第一标识信息和第一资源标识信息至第i资源标识信息构成的至少一个映射时,根据所述历史预约记录对所述至少两个服务提供端进行优先级排序,得到排序结果;将所述排序结果中处于第一排序位置的服务提供端选定为所述目标服务提供端。上述方案中,所述方法还包括:根据所述历史预约记录对所述至少两个服务提供端进行优先级排序后,对用于决策所述优先级排序的权重值,根据所述至少两个服务提供端反馈的挂号资源中的排班信息、和/或服务提供端所属的优先级类型进行权重值的动态赋值运算,对所述排序结果进行动态更新。上述方案中,所述方法还包括:对所述第一资源标识信息至所述第i资源标识信息,根据信息值进行位置排序,将所述至少两个服务提供端根据所述位置排序存储于所述排序结果的数组中;统计所述第一资源标识信息至所述第i资源标识信息的信息个数;所述第一标识信息为指定格式时,根据所述第一标识信息对所述信息个数进行取模运算;将取模运算结果作为所述至少两个服务提供端在所述排序结果的数组中的数组下标;在所述数组下标中,通过最小的数组下标去标识所述排序结果中处于第一排序位置的服务提供端。上述方案中,所述方法还包括:所述第一请求为不同终端发起的至少一个请求时,从所述至少一个请求中解析出第一标识信息至第j标识信息,所述j为大于2的正整数;对所述第一资源标识信息至所述第i资源标识信息,根据信息值进行位置排序,将所述至少两个服务提供端根据所述位置排序存储于所述排序结果的数组中;统计所述第一资源标识信息至所述第i资源标识信息的信息个数;所述第一标识信息至第j标识信息为指定格式时,根据所述第一标识信息至第j标识信息分别对所述信息个数进行取模运算;将至少一个取模运算结果分别作为所述至少两个服务提供端在所述排序结果的数组中的数组下标;在所述数组下标中,通过最小的数组下标去标识所述排序结果中处于第一排序位置的服务提供端。本发明实施例还提供一种服务器,所述服务器包括:请求接收单元,用于接收第一请求,所述第一请求中携带挂号需求信息;转发单元,用于将所述挂号需求信息转发给至少两个服务提供端,得到至少两个服务提供端反馈的挂号资源;解析单元,用于从所述第一请求中解析出第一标识信息;提取单元,用于提取在终端与服务提供端间建立的映射关系;查询单元,用于若从所述映射关系中查询到所述第一标识信息,则存在历史预约记录;请求响应单元,用于根据所述映射关系和/或所述历史预约记录从至少两个服务提供端中选择出一个目标服务提供端,将所述目标服务提供端反馈的挂号资源封装到第一请求响应中,发送所述第一请求响应给终端。上述方案中,所述请求响应单元,进一步用于:从所述至少两个服务提供端反馈的挂号资源中分别解析出第一资源标识信息至第i资源标识信息,所述i为大于1的正整数;所述第一标识信息和所述第一资源标识信息构成第一映射,当所述第一映射存在于所述映射关系中时,将与所述第一资源标识信息对应的服务提供端选定为所述目标服务提供端。上述方案中,所述请求响应单元,进一步用于:从所述至少两个服务提供端反馈的挂号资源中分别解析出第一资源标识信息至第i资源标识信息,所述i为大于1的正整数;在所述映射关系中,存在由所述第一标识信息和第一资源标识信息至第i资源标识信息构成的至少一个映射时,根据所述历史预约记录对所述至少两个服务提供端进行优先级排序,得到排序结果;将所述排序结果中处于第一排序位置的服务提供端选定为所述目标服务提供端。上述方案中,所述服务器还包括:排序调整单元,用于:对用于决策所述优先级排序的权重值,根据所述至少两个服务提供端反馈的挂号资源中的排班信息、和/或服务提供端所属的优先级类型进行权重值的动态赋值运算,对所述排序结果进行动态更新。上述方案中,所述服务器还包括:运算处理单元,用于:对所述第一资源标识信息至所述第i资源标识信息,根据信息值进行位置排序,将所述至少两个服务提供端根据所述位置排序存储于所述排序结果的数组中;统计所述第一资源标识信息至所述第i资源标识信息的信息个数;所述第一标识信息为指定格式时,根据所述第一标识信息对所述信息个数进行取模运算;将取模运算结果作为所述至少两个服务提供端在所述排序结果的数组中的数组下标;在所述数组下标中,通过最小的数组下标去标识所述排序结果中处于第一排序位置的服务提供端。上述方案中,所述服务器还包括:运算处理单元,用于:所述第一请求为不同终端发起的至少一个请求时,从所述至少一个请求中解析出第一标识信息至第j标识信息,所述j为大于2的正整数;对所述第一资源标识信息至所述第i资源标识信息,根据信息值进行位置排序,将所述至少两个服务提供端根据所述位置排序存储于所述排序结果的数组中;统计所述第一资源标识信息至所述第i资源标识信息的信息个数;所述第一标识信息至第j标识信息为指定格式时,根据所述第一标识信息至第j标识信息分别对所述信息个数进行取模运算;将至少一个取模运算结果分别作为所述至少两个服务提供端在所述排序结果的数组中的数组下标;在所述数组下标中,通过最小的数组下标去标识所述排序结果中处于第一排序位置的服务提供端。本发明实施例还提供一种计算机可读存储介质,所述存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上面任意一种所述信息处理方法的步骤。本发明实施例还提供一种服务器,所述服务器包括:存储器,用于存储能够在处理器上运行的计算机程序;处理器,用于运行所述计算机程序时,执行上面任意一种所述信息处理方法的步骤。本发明实施例的信息处理方法,包括:接收第一请求,所述第一请求中携带挂号需求信息;将所述挂号需求信息转发给至少两个服务提供端,得到至少两个服务提供端反馈的挂号资源;从所述第一请求中解析出第一标识信息;提取在终端与服务提供端间建立的映射关系;若从所述映射关系中查询到所述第一标识信息,则存在历史预约记录;根据所述映射关系和/或所述历史预约记录从至少两个服务提供端中选择出一个目标服务提供端,将所述目标服务提供端反馈的挂号资源封装到第一请求响应中,发送所述第一请求响应给终端。采用本发明实施例,服务器转发终端发起的第一请求给至少两个服务提供端,可以得到至少两个服务提供端反馈的挂号资源。为了避免用户自行选择或者选择到不精准的资源,根据第一标识信息(如用户标识)对至少两个服务提供端进行区分,以便从至少两个服务提供端中选择出目标服务提供端。若从映射关系中查询到该第一标识信息,则说明用户之前存在历史预约记录,那么,可以根据所述映射关系和/或所述历史预约记录从至少两个服务提供端中筛选出一个目标服务提供端,将所述目标服务提供端反馈的挂号资源封装到第一请求响应中,发送所述第一请求响应给终端。由于经过服务器的筛选处理,因此,避免了用户自行选择,节约了处理时间,提高了处理效率,哪怕号源资源非常紧张,也能使用户可以及时挂上号。且,提高了提供给用户号源信息的准确度,减少了终端与挂号平台的交互次数,不仅终端或挂号平台单机的处理效率高,由终端和挂号平台构成的整体系统,其处理效率也很高。附图说明图1为本发明实施例中进行信息交互的各方硬件实体的示意图;图2为本发明实施例一方法的实现流程示意图;图3为本发明实施例一系统架构的示意图;图4为本发明实施例一服务器的硬件架构示意图;图5为包含多个合作方挂号资源的用户界面示意图;图6为应用本发明实施例的一应用场景的权重筛选流程图;图7为应用本发明实施例的一应用场景的取模运算流程图;图8为应用本发明实施例的一应用场景的字符到数值的代码转换示意图。具体实施方式下面结合附图对技术方案的实施作进一步的详细描述。现在将参考附图描述实现本发明各个实施例的移动终端。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明实施例的说明,其本身并没有特定的意义。因此,"模块"与"部件"可以混合地使用。在下面的详细说明中,陈述了众多的具体细节,以便彻底理解本发明。不过,对于本领域的普通技术人员来说,显然可在没有这些具体细节的情况下实践本发明。在其他情况下,没有详细说明公开的公知方法、过程、组件、电路和网络,以避免不必要地使实施例的各个方面模糊不清。另外,本文中尽管多次采用术语“第一”、“第二”等来描述各种元件(或各种阈值或各种应用或各种指令或各种操作)等,不过这些元件(或阈值或应用或指令或操作)不应受这些术语的限制。这些术语只是用于区分一个元件(或阈值或应用或指令或操作)和另一个元件(或阈值或应用或指令或操作)。例如,第一操作可以被称为第二操作,第二操作也可以被称为第一操作,而不脱离本发明的范围,第一操作和第二操作都是操作,只是二者并不是相同的操作而已。本发明实施例中的步骤并不一定是按照所描述的步骤顺序进行处理,可以按照需求有选择的将步骤打乱重排,或者删除实施例中的步骤,或者增加实施例中的步骤,本发明实施例中的步骤描述只是可选的顺序组合,并不代表本发明实施例的所有步骤顺序组合,实施例中的步骤顺序不能认为是对本发明的限制。本发明实施例中的术语“和/或”指的是包括相关联的列举项目中的一个或多个的任何和全部的可能组合。还要说明的是:当用在本说明书中时,“包括/包含”指定所陈述的特征、整数、步骤、操作、元件和/或组件的存在,但是不排除一个或多个其他特征、整数、步骤、操作、元件和/或组件和/或它们的组群的存在或添加。本发明实施例的智能终端(如移动终端)可以以各种形式来实施。例如,本发明实施例中描述的移动终端可以包括诸如移动电话、智能电话、笔记本电脑、数值广播接收器、个人数值助理(pda,personaldigitalassistant)、平板电脑(pad)、便携式多媒体播放器(pmp,portablemediaplayer)、导航装置等等的移动终端以及诸如数值tv、台式计算机等等的固定终端。下面,假设终端是移动终端。然而,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。图1为本发明实施例中进行信息交互的各方硬件实体的示意图,图1中包括:终端1、服务器2、服务器31-33。终端1可以由多个终端11-13组成,通过无线或有线方式与服务器2进行信息交互。服务器2为挂号平台的具体实现,服务器31-33是多个服务提供端,图1中的服务器个数仅仅起指代作用,并不限制服务器的个数。目前是将多个挂号信息合作方提供的第三方信息统一反馈给用户,由用户从中自行选择。考虑到现在号源资源是非常紧张的,由用户自行选择势必会占用大量的处理时间,而处理时间越长,处理效率越低,导致用户无法及时挂上号。对于该处理效率低下的问题,采用本发明实施例,由服务器执行筛选逻辑,不需要用户选择。进一步,多个挂号信息合作方提供的第三方信息,由于各自设置的不同,可能对于同一号源资源采用不同的显示策略并推送给用户,对于同一号源资源,用户会看到不一致的显示效果,对用户是种干扰,同样会占用大量的处理时间,同样避免不了处理效率低下的问题。如果用户选择的号源信息不精准,还会增加终端与挂号平台的交互次数,不仅终端或挂号平台单机的处理效率低下,由终端和挂号平台构成的整体系统,其处理效率也低下。同一个资源显示不一样,整体性不好,干扰用户选择。对此,采用本发明实施例,由服务器执行筛选逻辑,可以确保精准的反馈数据给终端,同一个资源显示一样,整体性好,不干扰用户选择。另,不同用户看到的号源具备随机性。还可以根据产品策略和合作方类型调整优先级,进一步提高反馈数据的准确度。如图1所示,由服务器执行的筛选逻辑10,包括:s1、服务器2接收第一请求,所述第一请求中携带挂号需求信息,将所述挂号需求信息转发给至少两个服务提供端(如第三方合作方),以服务器31-33表示,得到至少两个服务提供端反馈的挂号资源(如有某个医院某个科室中某个医生的排班情况);s2、服务器2从所述第一请求中解析出第一标识信息(如用户标识信息);s3、提取在终端与服务提供端间建立的映射关系(如用户标识信息和服务器提供端的标识信息构成的映射关系),本文中,对于服务器提供端的标识信息,一个具体实现为合作方标识信息,从所述映射关系中查询到所述第一标识信息时,说明存在历史预约记录;s4、服务器2根据所述映射关系和/或所述历史预约记录从至少两个服务提供端中选择出一个目标服务提供端,将所述目标服务提供端反馈的挂号资源封装到第一请求响应并发送给终端1。上述图1的例子只是实现本发明实施例的一个系统架构实例,本发明实施例并不限于上述图1所述的系统结构,基于上述图1所述的系统架构,提出本发明方法各个实施例。本发明实施例的一种信息处理方法,如图2所示,所述方法包括:接收第一请求,所述第一请求中携带挂号需求信息(101)。将所述挂号需求信息转发给至少两个服务提供端,得到至少两个服务提供端反馈的挂号资源(102)。挂号资源可以为某个医院某个科室中某个医生的排班情况。本发明实施例中,在浏览器页面或应用页面中包含提供各种生活服务的入口,比如浏览器页面中的城市服务入口。通过城市服务入口进入包含至少一个服务选项的第一页面中,在显示于所述第一页面的至少一个服务选项中选择目标服务,触发开启所述目标服务对应的服务引擎。比如,用户想要挂号,那么,目标服务就是挂号,开启挂号服务。所述服务引擎可以是支持挂号服务的功能引擎,具体的,可以通过由服务器集群实现的挂号平台来实现。挂号平台支持与至少一个服务提供端(如第三方合作方)建立关联,每一个服务提供端包含至少一个医院的至少一个挂号资源。当用户在所述挂号平台中输入挂号需求信息,发出包含所述挂号需求信息的查询请求后,挂号平台对查询请求进行上述筛选逻辑10,从多个服务提供端所提供的相同或相似服务中,选择出满足所述挂号需求信息的匹配信息,且所述匹配信息为多个服务提供端中一个服务提供端所提供的挂号资源。筛选逻辑10执行完毕后,挂号平台将处理结果(如从多个服务提供端中优选出其中一个服务提供端所提供的挂号资源)封装到查询应答中,返回查询应答给终端。所述查询应答中包括与所述挂号需求信息相匹配的一个服务提供端所提供的挂号资源。采用本发明实施例,不需要靠用户自行选择,用户直接得到经挂号平台所优选的挂号资源;同一个资源显示一样,整体性好,不会干扰用户选择;不同用户看到的号源是不一样的,具备号源分发的随机性;按照优先级根据产品策略和合作方类型调整所优选的挂号资源。本发明实施例的一种信息处理方法,还包括:从所述第一请求中解析出第一标识信息(103)。第一标识信息的一个示例为:用户标识信息,可以简称为用户标识。提取在终端与服务提供端间建立的映射关系(104)。本发明实施例中,可以把用户标识信息和多个服务提供端(如第三方合作方)间建立的映射关系,保存到分布式缓存系统中,这样就可以大大节约查询的耗时。具体的,映射关系可以和历史预约记录分别独立存在,也可以将映射关系划分到历史预约记录中,以将映射关系划分到历史预约记录中为例,在分布式缓存处理中,第一,历史预约记录中的映射关系,需要一次性导入到分布式缓存中;第二,新产生的预约记录,需要及时插入到分布式缓存中。本发明实施例中,除了上述分布式缓存系统的处理,也可以用单一缓存系统来替代,具体的,在用户量不大,系统的分布式要求不高的处理逻辑中,可以采用单一节点的分布式缓存系统,来满足挂号服务需求。本发明实施例的一种信息处理方法,还包括:若从所述映射关系中查询到所述第一标识信息,则存在历史预约记录(105)。根据所述映射关系和/或所述历史预约记录从至少两个服务提供端中选择出一个目标服务提供端,将所述目标服务提供端反馈的挂号资源封装到第一请求响应中,发送所述第一请求响应给终端(106)。一个示例为:选择微信/手机qq/手机qq浏览器城市服务中的挂号服务,该服务通过挂号平台实现。挂号平台与多家第三方合作方有合作关系。用户在选择所需挂号的科室后,挂号平台的后台会以并发处理方式或异步处理方式与多家第三方合作方进行交互,取回该科室下所有医生的排班,并对多家合作方提供的排班数据进行整理。如果提供该医生排班数据的全部合作方选项给用户,用户还需要手动进行选择,效率低下。且,如果用户选择的不精确,还会增加终端与挂号平台的交互次数,不仅终端单机的处理效率低下,由终端和挂号平台构成的整体系统,其处理效率也低下。采用本发明实施例的一种解决方案为:由挂号平台为用户筛选多个第三方合作方只不过的一家合作方,这样用户在选择完医生后就可以直接预约挂号,从而提高了处理效率。通过挂号平台的处理逻辑对多家合作方提供的排班数据进行整理,也能提高数据的精确度。本发明实施例中,1)并发处理,指能处理多个同时性活动的能力,即将终端的查询请求通过挂号平台转发给多个服务提供端(如第三方合作方)进行同时处理,以得到至少一个医院的至少一个挂号资源,处理效率快。2)异步处理,指当调用方发出请求后,不能马上收到结果,由被调用方通过回调的方式通知调用方,即将终端的查询请求以回调的方式通知一个服务提供端(如第三方合作方)进行处理,减轻处理负责。也就是说,许多任务可以不同时进行,这样可以减轻提供功能载体的负担。本发明实施例中,可以通过挂号平台对多个服务提供端(如第三方合作方)所提供的数据进行自动筛选,自动筛选的逻辑要包含多个方面的考量:第一、与用户相关,即用户之前有过预约记录的合作方优先展现,这样可以省略掉用户的注册步骤;第二、合作方的展现优先级可根据产品策略和合作方类型调整;第三、体现场景的一致性,即同一个用户反复选择同一个医生后,提供服务的合作方要保持一致。第四、整体的随机性,即不同的用户看到的合作方要体现随机性。本发明实施例中,从所述至少两个服务提供端反馈的挂号资源中分别解析出第一资源标识信息至第i资源标识信息,所述i为大于1的正整数。所述第一标识信息和所述第一资源标识信息构成第一映射,当所述第一映射存在于所述映射关系中时,将与所述第一资源标识信息对应的服务提供端选定为所述目标服务提供端。可见,根据所述映射关系,可以从至少两个服务提供端中选择出一个目标服务提供端,将所述目标服务提供端反馈的挂号资源封装到第一请求响应中,发送所述第一请求响应给终端。采用本发明实施例,第一标识信息和所述第一资源标识信息为“一对一关系”,说明用户仅仅在一个服务提供端存在有历史预约记录,那么,就将与第一资源标识信息对应服务提供端所提供的挂号资源直接反馈给终端,不需要用户自行选择,而且,基于该映射关系得到的该挂号资源是非常准确的。本发明实施例中,从所述至少两个服务提供端反馈的挂号资源中分别解析出第一资源标识信息至第i资源标识信息,所述i为大于1的正整数。在所述映射关系中,存在由所述第一标识信息和第一资源标识信息至第i资源标识信息构成的至少一个映射时,根据所述历史预约记录对所述至少两个服务提供端进行优先级排序,得到排序结果。将所述排序结果中处于第一排序位置的服务提供端选定为所述目标服务提供端。可见,根据所述映射关系,可以从至少两个服务提供端中选择出一个目标服务提供端,将所述目标服务提供端反馈的挂号资源封装到第一请求响应中,发送所述第一请求响应给终端。采用本发明实施例,第一标识信息和所述第一资源标识信息至第i资源标识信息为“一对多关系”,说明用户在多个服务提供端存在有历史预约记录,那么,就需要根据历史预约记录对多个服务提供端进行优先级排序,比如,将历史预约记录按照预约时间进行排序,以便对多个服务提供端进行优先级排序。具体的,可以根据最近一次的预约情况,从多个服务提供端中选定所对应的目标服务提供端,将该目标服务提供端所提供的挂号资源直接反馈给终端,不需要用户自行选择,而且,基于该映射关系和历史预约记录得到的该挂号资源是最接近用户需求的,准确度很高。又如,将历史预约记录按照用户行为的相关性进行排序,以便对多个服务提供端进行优先级排序。具体的,可以根据用户近期体检报告中的问题指标参数,或者,用户近期查询或浏览的专家文章或咨询专家的问答互动等来分析出用户可能感兴趣的专家,从多个服务提供端中选定所对应的目标服务提供端,将该目标服务提供端所提供的挂号资源直接反馈给终端,不需要用户自行选择,而且,基于该映射关系和历史预约记录得到的该挂号资源是最接近用户需求的,准确度很高。本发明实施例中,还可以根据所述历史预约记录从至少两个服务提供端中选择出一个目标服务提供端。历史预约记录的一个示例为:比如,对于用户的复诊行为,由于用户之前在某个服务提供端已经存在既往预约历史记录,因此,可以,根据既往预约历史记录优先将该服务提供端提供的挂号资源发送给终端。本发明实施例中,权重是动态赋值的,并不是一成不变的。在筛选策略中还包括合作方类型,以实现挂号资源的动态调整。根据所述历史预约记录对所述至少两个服务提供端进行优先级排序后,对用于决策所述优先级排序的权重值,根据所述至少两个服务提供端反馈的挂号资源中的排班信息、和/或服务提供端所属的优先级类型进行权重值的动态赋值运算,对所述排序结果进行动态更新。其中,该排班信息可以为某个医院某个科室中某个医生的排班情况。该服务提供端所属的优先级类型可以为根据挂号平台中的预设策略定义服务提供端,即第三方合作方的类型,比如合作方可以通过与挂号平台约定的交互方式,比如竞价排名等方式得到不同的优先级,将这些优先级存储于挂号平台的预设策略中,并根据后续合作情况修改所约定的交互方式,以便随时对该优先级进行动态调整)进行权重值的动态赋值运算,对所述排序结果进行动态更新。采用本发明实施例,多个服务提供端(如第三方合作方)对应的权重需要体现出用户相关性,而各个服务提供端所提供的挂号资源,是随着该天该医生的排班状况动态变化的,因此,需要采用动态的权重配置策略,不能使用静态的权重配置,通过动态的权重配置策略提高准确度。本发明实施例中,比如一种类型的服务提供端(如第三方合作方)的权重固定高于另一种类型的服务提供端(如第三方合作方)的情况,合作方的权重是用户相关的,即权重的赋值是具备用户相关性的。因此,权重需要在查询用户和合作方的映射关系后,动态的赋值。比如:d医生某天的排班情况是a和b两家合作方有排班,c没有,用户曾经在a合作方中预约过,因此a的权重高于b。如果另外一天d医生的排班情况变成了a和c有排班,用户在a和c都预约过,则a和c的权重一致。总之,权重是随着排班情况、用户的历史预约情况、以及挂号平台固定策略中确定的服务提供端所属的优先级类型进行动态的调整,最大可能地保持权重的动态可调节功能,以提高准确度。本发明实施例中,还包括:预筛选处理。具体的,在挂号平台的筛选处理中,用户标识,可以为一串字符串,也可以为一串数值。同一个用户标识由于其具体表现形式(字符串或数值)的不同,映射关系有所不同,那么,如何保证统一的映射关系,以体现合作方的随机性呢?这就需要进行预筛选处理。而且,合作方的强随机性只能体现在同权重的合作方之间。因为,最终向用户提供服务的合作方只有一家,只需要在最高权重的一批合作方中体现强随机性即可,这也需要进行预筛选处理。在预筛选处理中,挂号平台需要首先选择出用户发起查询请求中某医生的某日排班中,全部合作方中权值最高的一批合作方,以实现预筛选,之后,根据映射关系和/或历史预约记录等再次进行筛选处理。本发明实施例中,对同一个用户进行取模运算,得到的效果为:整体性好,显示结果一样。收到同一个终端发起的请求,将所述目标服务提供端反馈的挂号资源封装到请求响应中,发送所述请求响应给终端。其中,对于同一个终端发起的请求,当终端解析出请求响应后,得到同样的显示效果。具体的,对所述第一资源标识信息至所述第i资源标识信息,根据信息值进行位置排序,将所述至少两个服务提供端根据所述位置排序存储于所述排序结果的数组中。一个示例为:排序结果是以数组的形式实现的,每一个服务提供端为一个数组,按照信息值大小排列其在排序结果中的数组位置先后顺序。统计所述第一资源标识信息至所述第i资源标识信息的信息个数。所述第一标识信息为指定格式,比如数值格式。如果不是数值格式,则需要将第一标识信息由字符串格式转换为数值格式时,根据所述第一标识信息对所述信息个数进行取模运算。将取模运算结果作为所述至少两个服务提供端在所述排序结果的数组中的数组下标。在所述数组下标中,通过最小的数组下标去标识所述排序结果中处于第一排序位置的服务提供端。采用本发明实施例,解决了合作方提供的排班内容不一致的情况,确保了整体性和一致性。比如a合作方提供该医生该天全天的排班,而b合作方提供该医生该天上午的排班。用户在第一次获取排班的时候,系统选择了a合作方,用户看到了排班是全天有效的,但如果用户此时退出再进系统获取一次排班,可能就会看到b合作方提供的半天的排班了,这种前后的差异会让用户有系统不一致的感觉。而本发明实施例中,服务提供端(如第三方合作方)按id排序和用户标识的数组形式(或称为用户的数值标识)对服务提供端的个数取模,因为用户的数值标识是固定不变的,而在排班结果不变的情况下,服务提供端的个数也是不变的,从而,保证了用户前后两次进入挂号平台所得到的服务提供端选择结果是一致的,也就是说,通过挂号平台根据终端请求对服务提供端筛选后,推送给同一个终端前后两次同一个请求的挂号资源,无论是在内容上,还是显示形式上,都可以是一致的。本发明实施例中,对不同用户进行取模运算,得到的效果为:不同用户,随机性强,显示结果不一样。收到不同终端发起的不同请求,将所述目标服务提供端反馈的挂号资源封装到请求响应中,发送所述请求响应给不同的终端。其中,对于不同终端发起的不同请求,当终端解析出请求响应后,得到不一样的显示效果。具体的,所述第一请求为不同终端发起的至少一个请求时,从所述至少一个请求中解析出第一标识信息至第j标识信息,所述j为大于2的正整数。对所述第一资源标识信息至所述第i资源标识信息,根据信息值进行位置排序,将所述至少两个服务提供端根据所述位置排序存储于所述排序结果的数组中。一个示例为:排序结果是以数组的形式实现的,每一个服务提供端为一个数组,按照信息值大小排列其在排序结果中的数组位置先后顺序。统计所述第一资源标识信息至所述第i资源标识信息的信息个数,所述第一标识信息至第j标识信息为指定格式,如数值格式。如果不是数值格式,则需要将第一标识信息由字符串格式转换为数值格式)时,根据所述第一标识信息至第j标识信息分别对所述信息个数进行取模运算,将至少一个取模运算结果分别作为所述至少两个服务提供端在所述排序结果的数组中的数组下标。在所述数组下标中,通过最小的数组下标去标识所述排序结果中处于第一排序位置的服务提供端。采用本发明实施例,确保了随机性。由于不同的用户所得到的取模结果是不同的、是随机的,那么,在同一时间,不同的用户选择同样的科室和医生同样的日期进行预约,因为,取模结果不一样,导致挂号平台提供给终端的服务提供端(如第三方合作方)是不一样的,也就是说,通过挂号平台根据终端请求对服务提供端筛选后,推送给不同终端不同请求的挂号资源,无论是在内容上,还是显示形式上,都可以是不一致的。本发明实施例的信息处理系统,如图3所示,包括终端41、服务器42、服务器43-44。终端41发起第一请求,服务器42接收第一请求,所述第一请求中携带挂号需求信息,将所述挂号需求信息转发给至少两个服务提供端,以服务器43-44表示,得到至少两个服务提供端反馈的挂号资源,从至少两个服务提供端中选择出一个目标服务提供端,将所述目标服务提供端反馈的挂号资源封装到第一请求响应并发送给终端41。其中,服务器42包括:请求接收单元421,用于接收第一请求,所述第一请求中携带挂号需求信息。转发单元422,用于将所述挂号需求信息转发给至少两个服务提供端,得到至少两个服务提供端反馈的挂号资源。解析单元433,用于从所述第一请求中解析出第一标识信息。提取单元434,用于提取在终端与服务提供端间建立的映射关系。查询单元435,用于若从所述映射关系中查询到所述第一标识信息,则存在历史预约记录。请求响应单元436,用于根据所述映射关系和/或所述历史预约记录从至少两个服务提供端中选择出一个目标服务提供端,将所述目标服务提供端反馈的挂号资源封装到第一请求响应中,发送所述第一请求响应给终端。一个示例为:选择微信/手机qq/手机qq浏览器城市服务中的挂号服务,该服务通过挂号平台实现。挂号平台与多家第三方合作方有合作关系。用户在选择所需挂号的科室后,挂号平台的后台会以并发处理方式或异步处理方式与多家第三方合作方进行交互,取回该科室下所有医生的排班,并对多家合作方提供的排班数据进行整理。如果提供该医生排班数据的全部合作方选项给用户,用户还需要手动进行选择,效率低下。且,如果用户选择的不精确,还会增加终端与挂号平台的交互次数,不仅终端单机的处理效率低下,由终端和挂号平台构成的整体系统,其处理效率也低下。采用本发明实施例的一种解决方案为:由挂号平台为用户筛选多个第三方合作方只不过的一家合作方,这样用户在选择完医生后就可以直接预约挂号,从而提高了处理效率。通过挂号平台的处理逻辑对多家合作方提供的排班数据进行整理,也能提高数据的精确度。本发明实施例中,1)并发处理,指能处理多个同时性活动的能力,即将终端的查询请求通过挂号平台转发给多个服务提供端(如第三方合作方)进行同时处理,以得到至少一个医院的至少一个挂号资源,处理效率快。2)异步处理,指当调用方发出请求后,不能马上收到结果,由被调用方通过回调的方式通知调用方,即将终端的查询请求以回调的方式通知一个服务提供端(如第三方合作方)进行处理,减轻处理负责。也就是说,许多任务可以不同时进行,这样可以减轻提供功能载体的负担。本发明实施例一实施方式中,所述请求响应单元,进一步用于:从所述至少两个服务提供端反馈的挂号资源中分别解析出第一资源标识信息至第i资源标识信息,所述i为大于1的正整数;所述第一标识信息和所述第一资源标识信息构成第一映射,当所述第一映射存在于所述映射关系中时,将与所述第一资源标识信息对应的服务提供端选定为所述目标服务提供端。本发明实施例一实施方式中,所述请求响应单元,进一步用于:从所述至少两个服务提供端反馈的挂号资源中分别解析出第一资源标识信息至第i资源标识信息,所述i为大于1的正整数;在所述映射关系中,存在由所述第一标识信息和第一资源标识信息至第i资源标识信息构成的至少一个映射时,根据所述历史预约记录对所述至少两个服务提供端进行优先级排序,得到排序结果;将所述排序结果中处于第一排序位置的服务提供端选定为所述目标服务提供端。本发明实施例一实施方式中,所述服务器还包括:排序调整单元,用于:对用于决策所述优先级排序的权重值,根据所述至少两个服务提供端反馈的挂号资源中的排班信息、和/或服务提供端所属的优先级类型进行权重值的动态赋值运算,对所述排序结果进行动态更新。本发明实施例一实施方式中,所述服务器还包括:运算处理单元,用于:对所述第一资源标识信息至所述第i资源标识信息,根据信息值进行位置排序,将所述至少两个服务提供端根据所述位置排序存储于所述排序结果的数组中;统计所述第一资源标识信息至所述第i资源标识信息的信息个数;所述第一标识信息为指定格式时,根据所述第一标识信息对所述信息个数进行取模运算;将取模运算结果作为所述至少两个服务提供端在所述排序结果的数组中的数组下标;在所述数组下标中,通过最小的数组下标去标识所述排序结果中处于第一排序位置的服务提供端。本发明实施例一实施方式中,所述服务器还包括:运算处理单元,用于:所述第一请求为不同终端发起的至少一个请求时,从所述至少一个请求中解析出第一标识信息至第j标识信息,所述j为大于2的正整数;对所述第一资源标识信息至所述第i资源标识信息,根据信息值进行位置排序,将所述至少两个服务提供端根据所述位置排序存储于所述排序结果的数组中;统计所述第一资源标识信息至所述第i资源标识信息的信息个数;所述第一标识信息至第j标识信息为指定格式时,根据所述第一标识信息至第j标识信息分别对所述信息个数进行取模运算;将至少一个取模运算结果分别作为所述至少两个服务提供端在所述排序结果的数组中的数组下标;在所述数组下标中,通过最小的数组下标去标识所述排序结果中处于第一排序位置的服务提供端。本发明实施例的一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如上述实施例所述信息处理方法的步骤。本发明实施例的一种服务器,如图4所示,所述服务器包括:存储器61,用于存储能够在处理器上运行的计算机程序;处理器62,用于运行所述计算机程序时,执行如上述实施例中信息处理方法的步骤。所述服务器还可以包括:外部通信接口63,外部通信接口63用于与终端等外设进行信息交互,具体如服务器接收终端发送的第一请求,从第一请求中得到挂号需求信息,转发挂号需求信息,从众多服务提供端反馈的挂号资源中选定一个服务提供端的挂号资源并通过第一请求响应反馈给终端。所述服务器还可以包括:内部通信接口64,所述内部通信接口64具体可以是pci总线等总线接口。以一个现实应用场景为例对本发明实施例阐述如下:以服务为挂号服务为例,挂号平台因为需要与用户交互,所以在合作方自动筛选时需要体现用户相关性,在一些不需要体现用户相关性的场景下,多服务方的选择可以是完全随机、加权随机。加权随机是指合作方的优先级或权值由产品策略指定,高优先级的合作方比低优先级的合作方有更大的筛选几率,但同级别的合作方则采用完全随机策略。用户相关性的体现方法也各不相同,可以不考虑用户的历史行为,只针对用户标识进行区分,用于合作方的筛选。在不需要考虑用户相关性的场景下,合作方的选择如果是完全随机策略,则在实现上可以根据异步调用合作方接口的回包先后来取舍,即使用先回包的合作方提供服务,另外,也可以使用随机函数在合作方的标识中任取其一。如果是加权随机策略,那么合作方是带有权重的,权重由产品策略给出,实现上需要对合作方按照权重进行排序,权重大的合作方排序在前,权重最大的一批合作方需要再使用随机函数进行筛选。用户相关性指的是在合作方的选择算法中,需要引入用户因素。比如说:针对用户的地理位置,提供离用户最近的合作方为其提供服务,以提供更快的响应速度。当然也可以不考虑用户的其他信息,只是对用户标识进行合作方的区分,那么就可以使用一致性哈希算法,把用户分配给不同的合作方。其中,所述一致性哈希算法,是一种特殊的哈希算法,在使用一致哈希算法后,哈希表槽位数(大小)的改变平均只需要对{\displaystylek/n}个关键字重新映射,其中{\displaystylek}是关键字的数量,{\displaystylen}是槽位数量。针对上述完全随机策略而言,完全随机策略的两种实现:合作方回包速度,以及使用随机函数。前者,对于响应速度不一致的合作方会造成请求流量的巨大差异。后者,则取决于随机函数的种子,如果随机种子使用不当,则无法达到完全随机的效果。针对用户相关性而言,比如针对用户的地理位置,就是一种用户相关性的考虑。需要首先获取用户的地理位置信息,另外,还需要知道合作方服务部署的机房位置,在合作方机房变动之后需要及时更新信息,而这种信息往往涉及到信息泄漏,因此不太容易实现。而单纯使用哈希算法对用户信息分配,则只能用于用户对合作方不敏感的场景。采用本发明实施例的筛选逻辑,可以为一种保证随机性和系统一致性的用户相关的合作方加权筛选算法。通过该筛选逻辑,可以从多家合作方中,由挂号平台为用户筛选一家合作方。这样,用户在选择完医生后就可以直接预约挂号了。该筛选逻辑要包括:1)与用户相关,即用户之前有过预约记录的合作方优先展现,这样可以省略掉用户的注册步骤;2)合作方的展现优先级可根据产品策略和合作方类型调整;3)体现场景的一致性,即同一个用户反复选择同一个医生后,提供服务的合作方要保持一致;4)整体的随机性,即不同的用户看到的合作方要体现随机性。未采用上述筛选逻辑,可以得到如图5所示的用户界面,可见,包括多个合作方的挂号资源,需要用户自行选择。而采用本发明实施例,直接将筛选好的一家合作方挂号资源呈现给用户。整个处理逻辑对于用户来说,是透明的,用户还是执行原有的请求操作,但是,处理结果与图5所示的用户界面完全不同。因为,采用上述筛选逻辑后,挂号平台会自动从众多的合作方中挑选一个为用户提供服务,与图5中需要让用户自己选择合作方的处理逻辑相比,采用上述筛选逻辑,对于用户而言少了一次与平台的交互,省略用户时间。另外,在实际使用场景中,比如用户复诊这一行为,往往会在挂号平台上预约同一家医院,同一个科室,同一个医生。在医生的排班结果不变的情况下,挂号平台的筛选策略,会保证之前用户已经预约过的平台会优先出现,这样可以避免用户面对新的合作方页面出现不适感,可以第一时间将用户所需的挂号资源发送给用户。筛选逻辑中,需要对既往预约史的合作方优先展现,合作方本身带有权重,要对权重动态赋值,保证最大的随机性和一致性,在技术实现上有以下内容:一.用户和合作方的既往预约史可以在历史预约记录中进行查询,但每次查询都是一次数据库操作,耗时很大,对系统的吞吐量有影响。所述吞吐量,指在一次性能测试过程中网络上传输的数据量的总和,对于交互式应用来说,吞吐量指标反映的是服务器承受的压力。关于历史预约记录存在的问题,挂号平台采取的解决方案是:把用户标识和合作方的映射关系保存到分布式缓存中,这样就可以大大节约查询的耗时。这里涉及到两个方面:第一、历史预约记录中的映射关系,需要一次性导入到分布式缓存中。第二、新产生的预约记录,需要及时插入到分布式缓存中。其中,所述分布式缓存,指采用分布计算的缓存系统。二.合作方的权重如何体现用户相关性,因为各合作方的展现是随着该天该医生的排班的状况变化的,故而不能使用静态的权重配置。关于合作方的权重,除了固定的产品策略,比如某一种类型的合作方的权重固定高于另一种类型的合作方外,合作方的权重是用户相关的,即权重的赋值是具备用户相关性的。因此,权重需要在查询用户和合作方的映射关系后,动态的赋值。也就是说,权重是随着排班情况,以及用户的历史预约情况,以及产品的固定策略动态设置,这样可以最大可能地保持权重的动态可调节。在挂号系统中,用户标识信息,可以是一串字符串,也可以是一串数值,如何保证统一的映射关系从而体现合作方的随机性呢?另外合作方的强随机性只能体现在同权重的合作方之间,而且因为最终向用户提供服务的合作方只有一家,因此只需要在最高权重的一批合作方中体现强随机性。挂号平台首先选择出该医生的某日排班中,全部合作方中权值最高的一批合作方(预筛选),这一过程的流程图如图6所示,图6为权重设置和合作方预筛选的处理流程,包括:1)获取到排班情况,判断是否为筛选策略中的高权值合作方,如果是,为其配置高权值;否则,为其配置低权值。配置高权值后,获取用户和合作方的映射关系,判断该用户有历史预约记录,如果有,则为其配置高权值;否则,为其配置低权值。2)经过高权值和低权值的配置后,对全部合作方按照权值进行排序,找到权重最高的一批合作方。在合作方预筛选结束后,得到的是最高权重的一批合作方,此时便需体现随机性和系统一致性。这两点其实是冲突的:随机性的体现是在这一批合作方中任选一个为用户提供服务,而系统一致性则要求用户在前后两次进入系统(在排班结果未改变的情况下),看到的合作方要一致。一致性的要求主要是解决合作方提供的排班内容不一致的情况:比如a合作方提供该医生该天全天的排班,而b合作方提供该医生该天上午的排班。用户在第一次获取排班的时候,系统选择了a合作方,用户看到了排班是全天有效的,但如果用户此时退出再进系统获取一次排班,可能就会看到b合作方提供的半天的排班了,这种前后的差异会让用户有系统不一致的感觉。三.用户标识的多样性问题,在挂号系统中,对于用户身份的标识有多种类型,如何进行统一的映射,并在保证随机性的同时,体现系统的一致性,即用户在短时间内查看同一个医生同一天的排班情况,在排班结果未改变的情况下,应该向用户展示同一个合作方。挂号平台通过如图7所示的处理流程,解决了随机性和一致性的冲突。图7为高权值合作方的随机性和一致性保证处理流程,图7所示的处理流程包括:步骤301、将字符串形式的用户标识转换成数值形式的用户标识,记为用户数值标识。同一个用户的用户数值标识保持不变。图8为将字符串形式的用户标识转换为数值形式的用户标识,所采用的转换代码示例,转换代码的方式为字符串到数值的hash算法。步骤302、根据用户数值标识对合作方个数取模。步骤303、合作方按id的数值大小进行排序,放入数组。步骤304、将取模的值作为合作方的数组下标。本发明实施例中,关于一致性,需确保两点:合作方按id排序和用户的数值标识对合作方个数取模,因为用户的数值标识是固定不变的,而在排班结果不变的情况下,合作方的个数也是不变的,因此就保证了用户前后两次进入系统得到的合作方选择结果一致。本发明实施例中,关于随机性,体现在不同的用户得到的取模结果是随机的,在同一时间,不同的用户选择同样的科室和医生同样的日期进行预约,因为取模结果不一样,导致系统提供的合作方不一样。在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。或者,本发明上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本
技术领域
:的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1