CN109462647A - 基于数据分析的资源分配方法、装置和计算机设备 - Google Patents
基于数据分析的资源分配方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN109462647A CN109462647A CN201811340885.4A CN201811340885A CN109462647A CN 109462647 A CN109462647 A CN 109462647A CN 201811340885 A CN201811340885 A CN 201811340885A CN 109462647 A CN109462647 A CN 109462647A
- Authority
- CN
- China
- Prior art keywords
- speech recognition
- recognition server
- server
- voice data
- identified
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000013468 resource allocation Methods 0.000 title claims abstract description 38
- 238000007405 data analysis Methods 0.000 title claims abstract description 32
- 230000005540 biological transmission Effects 0.000 claims description 46
- 230000004044 response Effects 0.000 claims description 24
- 238000009826 distribution Methods 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 13
- 230000002452 interceptive effect Effects 0.000 claims description 13
- 238000003860 storage Methods 0.000 claims description 9
- 238000001914 filtration Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 abstract description 9
- 238000004458 analytical method Methods 0.000 abstract description 7
- 230000008569 process Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000008439 repair process Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 238000005303 weighing Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
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
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/28—Constructional details of speech recognition systems
- G10L15/30—Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
-
- 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
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Computer Hardware Design (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请揭示了一种基于数据分析的资源分配方法、装置和计算机设备,接收IVR系统发送的语音识别请求;分别计算各语音识别服务器当前的待识别语音数据的总时长;对各所述总时长进行比较,确定所述待识别语音数据的总时长最少的语音识别服务器,并将所述总时长最少的语音识别服务器确定为用于处理所述语音识别请求的第一语音识别服务器;将所述识别请求分发至所述第一语音识别服务器。本申请通过对各语音识别服务器当前的待识别语音数据的总时长进行比较分析,来选择合理的语音识别服务器处理进入的语音识别请求,有利于实现对语音识别服务器的资源均衡使用,提高语音识别请求的处理效率。
Description
技术领域
本申请涉及语音识别领域,具体涉及一种基于数据分析的资源分配方法、装置和计算机设备。
背景技术
语音识别技术,是指让机器通过识别和理解,将语音信号转换为相应的文本或命令的技术,也就是说,要让机器听懂人类的语音。
负载均衡器用于将接收到的语音识别请求分发至语音识别服务器,语音识别服务器用于对接收到的语音识别请求进行处理。现有技术中,在接收到IVR(Interactive VoiceResponse,互动式语音应答)系统所发出的语音识别请求后,负载均衡器会使用轮询的方式来进行对语音识别服务器的调用,即选择多个语音识别服务器中的一个来处理接收到的语音识别请求,以实现各个语音识别服务器的负载均衡。但轮询只能根据交互次数来进行分配,且每次交互的时长可能存在较大的差异,由于负载均衡器没有根据各语音识别服务器的资源的实际使用情况来选择合理的语音识别服务器处理进入的语音识别请求,容易导致各语音识别服务器的资源分配不平均,语音识别请求的处理效率不高。
因此,现有技术还存在缺陷,需要改进。
发明内容
本申请的主要目的为提供一种基于数据分析的资源分配方法、装置和计算机设备,旨在解决现有对于语音识别服务器的资源分配不平均,语音识别请求的处理效率不高的技术问题。
本申请提出一种基于数据分析的资源分配方法,包括:
接收IVR(互动式语音应答)系统发送的语音识别请求;
分别计算各语音识别服务器当前的待识别语音数据的总时长;
对各所述总时长进行比较,确定所述待识别语音数据的总时长最少的语音识别服务器,并将所述总时长最少的语音识别服务器确定为用于处理所述语音识别请求的第一语音识别服务器;
将所述语音识别请求分发至所述第一语音识别服务器。
可选地,所述将所述语音识别请求分发至所述第一语音识别服务器的步骤之后,包括:
判断是否存在所述待识别语音数据的总时长大于预设时长阈值的第二语音识别服务器;
若是,将所述第二语音识别服务器加入禁止处理新的语音识别请求的黑名单内。
可选地,所述将所述第二语音识别服务器加入禁止处理新的语音识别请求的黑名单内的步骤之后,包括:
根据各所述语音识别服务器的待识别语音数据的总时长,计算出各所述语音识别服务器的待识别语音数据的平均时长;
筛选出待识别语音数据的总时长小于所述平均时长的第三语音识别服务器;
经过第一预设时间后,判断所述第二语音识别服务器内的待识别语音数据的总时长是否大于所述预设时长阈值;
若是,将所述第二语音识别服务器内的部分待识别语音数据分配至所述第三语音识别服务器,以使得经过分配后的所述第二语音识别服务器内的待识别语音数据的总时长小于所述预设时长阈值。
可选地,所述将所述语音识别请求分发至所述第一语音识别服务器的步骤之后,包括:
判断所述第一语音识别服务器是否处于正常工作状态;
若否,对除所述第一语音识别服务器之外的其它语音识别服务器当前的待识别语音数据的总时长进行比较,以得到比较结果;
根据所述比较结果,确定出用于处理所述语音识别请求的第四语音识别服务器,其中所述第四语音识别服务器处于正常工作状态;
将所述语音识别请求分发至所述第四语音识别服务器。
可选地,所述根据所述比较结果,确定出用于处理所述语音识别请求的第四语音识别服务器的步骤,包括:
按照待识别语音数据的总时长从小到大的顺序对所述其它语音识别服务器进行排序;
根据所述排序,遍历所述其它语音识别服务器;
判断当前访问的语音识别服务器是否处于正常工作状态;
若是,将所述当前访问的语音识别服务器确定为用于处理所述语音识别请求的所述第四语音识别服务器,并停止遍历。
可选地,所述接收IVR系统发送的语音识别请求的步骤之前,包括:
与各所述语音识别服务器建立TCP(传输控制协议)长连接,以便通过所述TCP长连接与各所述语音识别服务器之间进行信息交互。
可选地,所述将所述语音识别请求分发至所述第一语音识别服务器的步骤之后,包括:
判断是否接收到所述第一语音识别服务器反馈的对于所述语音识别请求的响应信息;
若是,将所述响应信息转发至所述IVR系统;
接收由所述IVR系统发送的与所述语音识别请求对应的语音数据;
将所述语音数据发送至所述第一语音识别服务器,以便所述第一语音识别服务器对所述语音数据进行识别。
本申请还提供了一种基于数据分析的资源分配装置,包括:
第一接收模块,用于接收IVR系统发送的语音识别请求;
计算模块,用于分别计算各语音识别服务器当前的待识别语音数据的总时长;
比较模块,用于对各所述总时长进行比较,得出所述待识别语音数据的总时长最少的语音识别服务器,并将所述总时长最少的语音识别服务器确定为用于处理所述语音识别请求的第一语音识别服务器;
第一分发模块,用于将所述识别请求分发至所述第一语音识别服务器。
本申请还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
本申请中提供的基于数据分析的资源分配方法、装置、计算机设备和存储介质,具有以下有益效果:
本申请中提供的基于数据分析的资源分配方法、装置、计算机设备和存储介质,接收IVR系统发送的语音识别请求;分别计算各语音识别服务器当前的待识别语音数据的总时长;对各所述总时长进行比较,确定所述待识别语音数据的总时长最少的语音识别服务器,并将所述总时长最少的语音识别服务器确定为用于处理所述语音识别请求的第一语音识别服务器;将所述识别请求分发至所述第一语音识别服务器。本申请通过对各语音识别服务器当前的待识别语音数据的总时长进行比较分析,来选择合理的语音识别服务器处理接收到的语音识别请求,有利于实现对语音识别服务器的资源均衡使用,提高语音识别请求的处理效率。
附图说明
图1是本申请一实施例的基于数据分析的资源分配方法的流程示意图;
图2是本申请另一实施例的基于数据分析的资源分配方法的流程示意图;
图3是本申请又一实施例的基于数据分析的资源分配方法的流程示意图;
图4是本申请一实施例的基于数据分析的资源分配装置的结构示意图;
图5是本申请一实施例的计算机设备的结构示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参照图1,本申请一实施例中提供了一种基于数据分析的资源分配方法,包括以下步骤:
S1:接收IVR(互动式语音应答)系统发送的语音识别请求;
S2:分别计算各语音识别服务器当前的待识别语音数据的总时长;
S3:对各所述总时长进行比较,确定所述待识别语音数据的总时长最少的语音识别服务器,并将所述总时长最少的语音识别服务器确定为用于处理所述语音识别请求的第一语音识别服务器;
S4:将所述语音识别请求分发至所述第一语音识别服务器。
如上述步骤S1所述,本实施例的执行主体为基于数据分析的资源分配装置,具体可为负载均衡器。负载均衡器用于接收IVR(Interactive Voice Response,互动式语音应答)系统发送的语音识别请求,并将该语音识别请求分发至语音识别服务器,以使得语音识别服务器对该语音识别请求进行处理。其中,在接收IVR系统发送的语音识别请求之前,负载均衡器需要与IVR系统建立对接,以实现与IVR系统的信息交互。举例地,负载均衡器与IVR系统建立对接的方式可为:在负载均衡器的sdp消息中带上识别资源信息,来建立负载均衡器与IVR系统的对接,其中sdp消息为IVR系统建立会话连接时使用的消息体;或者在IVR系统内直接配置负载池,使得IVR系统能通过该负载池直接与负载均衡器建立对接。
如上述步骤S2至S4所述,在接收到IVR系统发送的语音识别请求后,负载均衡器会对各语音识别服务器的资源实际使用率进行分析。其中,上述资源实际使用率通过各语音识别服务器的待识别语音数据的时长数据,即通过分析计算出的各所述语音识别服务器当前的待识别语音数据的总时长来体现,由于负载均衡器记录有由IVR系统发送的所有的语音识别请求的数据信息,该数据信息包括各个语音数据的时长,以及将各个语音数据对应发送的各个语音识别服务器,通过将每个语音识别服务器所需要处理的语音数据的时长数据减去已经返回到负载均衡器的已处理语音数据时长数据,得到的差值就是每个语音识别服务器当前的待处理的语音数据的总时长,通过对各语音识别服务器当前的待识别语音数据的总时长进行比较分析,可以确定出待识别语音数据的总时长最少的语音识别服务器,并将该总时长最少的语音识别服务器,确定为用于处理该语音识别请求的第一语音识别服务器。现有技术中,语音识别服务器的资源使用率是通过语音数据的数量来表现的,举例地,语音识别服务器A1有2条待识别语音数据,语音识别服务器A2有5条待识别语音数据,当收到语音识别请求时,负载均衡器会将该语音识别请求分发到待识别语音数据的数量较少的语音识别服务器A1,但负载均衡器并不会分析语音识别服务器A1和A2中待识别语音数据的时长,假如语音识别服务器A1的2条待识别语音数据的总时长是5分钟,语音识别服务器A2的5条待识别语音数据的总时长是2分钟,那么语音识别服务器A1的资源实际使用率是大于语音识别服务器A2的,可见现有的对语音识别服务器的资源分配的方法并不合理,此时应该将该识别请求分发到资源实际使用率较小的语音识别服务器A2,才更有利于实现语音识别服务器的资源均衡分配。本实施例利用待识别语音数据的总时长来表征资源实际使用率,能准确地体现出当前各语音识别服务器的资源的实际使用情况,并根据当前各语音识别服务器的资源的实际使用情况,来将语音识别请求合理的分发到资源实际使用率较低的语音识别服务器,有利于实现对语音识别服务器的资源均衡使用,提高语音识别请求的处理效率。
参照图2,进一步地,本申请一实施例中,上述步骤S4之后,包括:
S400:判断是否存在所述待识别语音数据的总时长大于预设时长阈值的第二语音识别服务器;
S401:若是,将所述第二语音识别服务器加入禁止处理新的语音识别请求的黑名单内。
本实施例中,预先设置的预设时长阈值,代表着语音识别服务器所能支持处理的最大的语音数据的时长数,如果该语音识别服务器在长时间内处理的语音数据的时长数都大于该预设时长阈值,即意味着该语音识别服务器长时间处于超负荷工作状态,则该语音识别服务器会受到严重的损坏甚至报废。为了保证语音识别服务器能够保持良好的使用寿命,负载均衡器需要时刻监控各个语音识别服务器的工作状态,当发现存在待识别语音数据的第一总时长大于预设时长阈值的第二语音识别服务器,则会将所述第二语音识别服务器移入暂不接收新的语音识别请求的黑名单内,即在一段时间内不会向该第二语音识别服务器分发新的语音识别请求,只有当第二语音识别服务器内的待处理的语音数据的总时长小于预设时长阈值后,才会将第二语音识别服务器从该黑名单内移除。在本实施例,当负载均衡器监控到某语音识别服务器处于超负荷工作状态时,会智能地停止向该语音识别服务器分发新的语音识别请求,来有效地对该语音识别服务器进行保护,保证了该语音识别服务器的使用寿命。
进一步地,本申请一实施例中,上述步骤S401之后,包括:
S402:根据各所述语音识别服务器的待识别语音数据的总时长,计算出各所述语音识别服务器的待识别语音数据的平均时长;
S403:筛选出待识别语音数据的总时长小于所述平均时长的第三语音识别服务器;
S404:经过第一预设时间后,判断所述第二语音识别服务器内的待识别语音数据的总时长是否大于所述预设时长阈值;
S405:若是,将所述第二语音识别服务器内的部分待识别语音数据分配至所述第三语音识别服务器,以使得经过分配后的所述第二语音识别服务器内的待识别语音数据的总时长小于所述预设时长阈值。
如上述步骤S402至S403所述,根据各所述语音识别服务器的待识别语音数据的总时长,计算出各所述语音识别服务器的待识别语音数据的平均时长的步骤,具体为:对当前所有的语音识别服务器的待识别语音数据的总时长进行求和运算得到和值,再将该和值除以所有的语音识别服务器的数量,便能得到该平均时长,进一步地,可筛选出待识别语音数据的总时长小于所述平均时长的语音识别服务器,其中,语音识别服务器的数量由实际情况决定。
如上述步骤S404至S405所述,预先设置的第一预设时间,表示语音识别处理器在该第一预设时间内处于超负荷工作状态,几乎不会对语音识别处理器本身造成损坏。在本实施例,在第二语音识别服务器对待识别语音数据进行处理,如果在经过第一预设时间后,第二语音识别服务器内剩余的待识别语音数据的总时长小于上述预设时长阈值,则表明第二语音识别服务器并没有长时间处于超负荷工作状态;而如果在超过该第一预设时间后,第二语音识别服务器内剩余的待识别语音数据的总时长仍然大于上述预设时长阈值,则表明第二语音识别服务器长时间处于超负荷工作状态,这样会对第二语音识别服务器本身的使用寿命造成极大的影响。为了对第二语音识别服务器进行保护,保证语音识别服务器的使用寿命,此时需要将第二语音识别处理器内的部分未识别语音数据分配到其它语音识别服务器,例如第三语音识别服务器进行处理,该第三语音识别服务器为待识别语音数据的总时长小于该平均时长的语音识别服务器,其中,上述部分待识别语音数据可为第二语音识别服务器中所有的待识别语音数据中的任意部分的待识别语音数据,需要进行分配的部分待识别语音数据的时长大于或等于指定时长,上述指定时长为经过第一预设时间后的所述第二语音识别服务器内的待识别语音数据的总时长与所述预设时长阈值的差值。另外,将第二语音识别服务器内的部分待识别语音数据分配至待识别语音数据的总时长小于平均时长的第三语音识别服务器,第三语音识别服务器的数量根据实际情况而定,具体为:对第二语音识别服务器内的语音数据的实际时长数据进行分析,假如该实际时长数据不会很大,则可将语音识别服务器内的部分待识别语音数据只分配到待识别语音数据的总时长小于平均时长的某一个指定语音识别服务器,并且保证第二语音识别服务器在经过分配后,剩下的待识别语音数据能在经过该第一预设时间的处理后的总时长小于该预设时长阈值;或者假如该实际时长数据过大,则可将第二语音识别服务器内的部分待识别语音数据分配到待识别语音数据的总时长小于所述平均时长的多个指定语音识别服务器(具体数量根据实际情况设置),并且保证第二语音识别服务器在经过分配后,剩下的待识别语音数据能在经过该第一预设时间的处理后的总时长能小于该预设时长阈值。通过将负荷量大于预设值的语音识别服务器内的部分待识别语音数据分配到负荷量较小的一个或多个指定语音识别服务器,有效地保证了负荷量大的语音识别服务器的使用寿命,也进一步促进了各语音识别服务器的资源的均衡使用。
进一步地,本申请一实施例中,上述步骤S4之后,包括:
S410:判断所述第一语音识别服务器是否处于正常工作状态;
S411:若否,对除所述第一语音识别服务器之外的其它语音识别服务器当前的待识别语音数据的总时长进行比较,以得到比较结果;
S412:根据所述比较结果,确定出用于处理所述识别请求的第四语音识别服务器,其中所述第四语音识别服务器处于正常工作状态;
S413:将所述语音识别请求分发至所述第四语音识别服务器。
本实施例中,在负载均衡器确定了将所述语音识别请求分发至第一语音识别服务器后,可能会出现第一语音识别服务器处于无法正常工作状态的情况,那么第一语音识别服务器就会无法对该语音识别请求进行响应反馈,以及后续的对与该语音识别请求相对应的语音数据的识别工作,使得整个识别流程无法正常运作,IVR系统不能收到第一语音识别服务器的识别结果,且用户无法及时得到IVR系统的回应,造成用户使用体验差。所以在本实施例,需要进一步确定第一语音识别服务器是否正常工作状态,如果判定第一语音识别服务器处于无法正常工作的状态,则将第一语音识别服务器排除掉,并对所述第一语音识别服务器之外的其它语音识别服务器的资源实际使用率进行分析,确定出用于处理所述语音识别请求的第四语音识别服务器,其中第四语音识别服务器当前的待识别语音数据的总时长在上述其它语音识别服务器之中是最少的,并在确认第四语音识别服务器处于正常工作状态后,将所述语音识别请求分发至所述第四语音识别服务器,以便该第四语音识别服务器进行对应处理。在本实施例,当第一语音识别服务器无法正常工作时,通过调用处于正常工作状态的第四语音识别服务器来对语音识别请求进行处理,有利于识别流程的正常运作,IVR系统能及时收到第四语音识别服务器的识别结果,且用户也能及时得到IVR系统的回应,保证了用户的使用体验。
进一步地,本申请一实施例中,上述步骤S412,包括:
S4120:按照待识别语音数据的总时长从小到大的顺序对所述其它语音识别服务器进行排序;
S4121:根据所述排序,遍历所述其它语音识别服务器;
S4122:判断当前访问的语音识别服务器是否处于正常工作状态;
S4123:若是,将所述当前访问的语音识别服务器确定为用于处理所述语音识别请求的所述第四语音识别服务器,并停止遍历。
本实施例中,根据上述比较结果,确定出用于处理所述语音识别请求的第四语音识别服务器的步骤,具体包括:当第一语音识别服务器为处于无法正常工作状态,则通过对除去第一语音识别服务器之外的其它各语音识别服务器的总时长进行分析,按照待识别语音数据的总时长从小到大的顺序,即递增的方式对其它各语音识别服务器进行排序,并根据该排序遍历上述的其它语音识别服务器,在每遍历到一个语音识别服务器时,如果确定该语音识别服务器处于正常工作状态,则将该语音识别服务器确定为用于处理所述语音识别请求的上述第四语音识别服务器,并将该语音识别请求分发至该语音识别服务器进行处理,并停止遍历。进一步地,如果在遍历结束后,都没有找到处于正常工作状态的语音识别服务器,则会向IVR系统返回处理失败的信息,即当前没有正常可用的语音识别服务器对上述语音识别请求进行处理,另外还会发出维修信息,以使得维修人员对处于无法正常工作状态的语音识别服务器进行维修。
进一步地,本申请一实施例中,上述步骤S1之前,包括:
S100:与各所述语音识别服务器建立TCP(传输控制协议)长连接,以便通过所述TCP长连接与各所述语音识别服务器之间进行信息交互。
本实施例中,在负载均衡器进行初始化时,可与每个语音识别服务器建立的TCP(Transmission Control Protocol,传输控制协议)长连接,可选地,可与每一个语音识别服务器建立数量至少为1的TCP长连接,其中建立的TCP长连接的具体数量按实际情况进行确定。在该传输控制协议长连接成功建立后,当负载均衡器需要将IVR系统发送的关于某一语音数据的语音识别请求分发至某一语音识别服务器时,即可直接使用上述所建立的传输控制协议长连接,通过所述传输控制协议长连接与该语音识别服务器之间进行信息交互,从而省去了当需要负载均衡器来调用该语音识别服务器时,再去建立传输控制协议长连接所耗费的时间。另外,负载均衡器与每个语音识别服务器之间所建立的传输控制协议长连接的个数的具体取值可根据实际需要而定,可以为一个,也可以为多个,举例地,负载均衡器与语音识别服务器A建立了一个传输控制协议长连接,负载均衡器与语音识别服务器B建立了两个传输控制协议长连接,负载均衡器与语音识别服务器C建立了五个传输控制协议长连接。其中,建立多个传输控制协议长连接的好处在于:当负载均衡器同时接收到IVR系统发送的多个语音数据对应的多个语音识别请求,且确定多个语音识别请求均需要由同一个语音识别服务器进行处理时,可利用多个传输控制协议长连接分别将多个语音识别请求同时分发至该语音识别服务器,而如果只有一个传输控制协议长连接的话,则只能在分发完一个语音识别请求后再分发另一个语音识别请求,直至将该多个语音识别请求分发完毕,所以建立一定数量的传输控制协议长连接,能够有效的提高了语音识别请求的传输效率。
参照图3,进一步地,本申请一实施例中,上述步骤S4之后,包括:
S420:判断是否接收到所述第一语音识别服务器反馈的对于所述语音识别请求的响应信息;
S421:若是,将所述响应信息转发至所述IVR系统;
S422:接收由所述IVR系统发送的与所述语音识别请求对应的语音数据;
S423:将所述语音数据发送至所述第一语音识别服务器,以便所述第一语音识别服务器对所述语音数据进行识别。
本实施例中,在负载均衡器将所述语音识别请求分发到第一语音识别服务器后,第一语音识别服务器会对该语音识别请求的语法进行解析,如果解析成功则会向负载均衡器返回请求识别成功的响应信息,而如果解析失败,则会向负载均衡器返回错误。在负载均衡器接收到上述响应信息后,会将该响应信息转发至上述的IVR系统,IVR系统在接收到响应信息后会向负载均衡器发送与上述语音识别请求相对应的语音数据,在负载均衡器接收到该语音数据后便会将其转发到该第一语音识别服务器,之后第一语音识别服务器会根据语法,使用对应的语言模型对该语音数据进行识别,得到识别结果,并将该识别结果返回到负载均衡器,使得负载均衡器将该识别结果返回到IVR系统,以实现IVR系统根据该识别结果与用户进行信息交互。
进一步地,本申请一实施例中,在接收IVR系统发送的语音识别请求的步骤之前,IVR系统会向负载均衡器发出心跳信息,负载均衡器在接收到所述IVR系统发送的心跳信息后,会判断自身是否能够发送对于所述心跳信息的反馈信息,若否,负载均衡器会发出通过第二负载均衡器接收IVR发送的语音数据的识别请求的警报信息。本实施例中,上述负载均衡器为主用负载均衡器,并对应设置至少一个备用负载均衡器,即上述第二负载均衡器。当上述负载均衡器,即主用负载均衡器在接收所述IVR系统发送的心跳信息,并判定自身出现故障,无法发送对于所述心跳信息的反馈信息后,会自动发出警报信息,以请求快速获得对应的维修,另外,主用负载均衡器也会发出通过备用负载均衡器接收IVR系统发送的语音识别请求的警报信息,在IVR系统得知主用负载均衡器出现故障,IVR会将语音识别请求发送至备用负载均衡器,备用负载均衡器会代替主用负载均衡器工作,来接收IVR发送的语音数据的识别请求,并进行后续的处理,并对当前各语音识别服务器的资源实际使用率分析,确定出用于处理所述识别请求的第一语音识别服务器,并将所述识别请求分发至所述第一语音识别服务器。通过增加备用负载均衡器,有效地提高了负载均衡器的可用性,保证服务的连续、稳定运行。另外,备用负载均衡器也可主动检测主用负载均衡器是否发送出了对于心跳信息的反馈信息,当判定主用负载均衡器出了故障,即无法正常工作后,可直接代替主用负载均衡器工作,来提醒IVR系统将语音数据的识别请求发送至备用负载均衡器。
参照图4,本申请一实施例中还提供了一种基于数据分析的资源分配装置,包括:
第一接收模块1,用于接收IVR(互动式语音应答)系统发送的语音识别请求;
第一计算模块2,分别计算各语音识别服务器当前的待识别语音数据的总时长;
第一比较模块3,用于对各所述总时长进行比较,确定所述待识别语音数据的总时长最少的语音识别服务器,并将所述总时长最少的语音识别服务器确定为用于处理所述语音识别请求的第一语音识别服务器;
第一分发模块4,用于将所述语音识别请求分发至所述第一语音识别服务器。
在上述第一接收模块中,本实施例的执行主体为基于数据分析的资源分配装置,具体可为负载均衡器。负载均衡器用于接收IVR(Interactive Voice Response,互动式语音应答)系统发送的语音识别请求,并将该语音识别请求分发至语音识别服务器,以使得语音识别服务器对该语音识别请求进行处理。其中,在接收IVR系统发送的语音识别请求之前,负载均衡器需要与IVR系统建立对接,以实现与IVR系统的信息交互。举例地,负载均衡器与IVR系统建立对接的方式可为:在负载均衡器的sdp消息中带上识别资源信息,来建立负载均衡器与IVR系统的对接,其中sdp消息为IVR系统建立会话连接时使用的消息体;或者在IVR系统内直接配置负载池,使得IVR系统能通过该负载池直接与负载均衡器建立对接。
在上述计算模块、比较模块和第一分发模块中,在接收到IVR系统发送的语音识别请求后,负载均衡器会对各语音识别服务器的资源实际使用率进行分析。其中,上述资源实际使用率通过各语音识别服务器的待识别语音数据的时长数据,即通过分析计算出的各所述语音识别服务器当前的待识别语音数据的总时长来体现,由于负载均衡器记录有由IVR系统发送的所有的语音识别请求的数据信息,该数据信息包括各个语音数据的时长,以及将各个语音数据对应发送的各个语音识别服务器,通过将每个语音识别服务器所需要处理的语音数据的时长数据减去已经返回到负载均衡器的已处理语音数据时长数据,得到的差值就是每个语音识别服务器当前的待处理的语音数据的总时长,通过对各语音识别服务器当前的待识别语音数据的总时长进行比较分析,可以确定出待识别语音数据的总时长最少的语音识别服务器,并将该总时长最少的语音识别服务器,确定为用于处理该语音识别请求的第一语音识别服务器。现有技术中,语音识别服务器的资源使用率是通过语音数据的数量来表现的,举例地,语音识别服务器A1有2条待识别语音数据,语音识别服务器A2有5条待识别语音数据,当收到语音识别请求时,负载均衡器会将该语音识别请求分发到待识别语音数据的数量较少的语音识别服务器A1,但负载均衡器并不会分析语音识别服务器A1和A2中待识别语音数据的时长,假如语音识别服务器A1的2条待识别语音数据的总时长是5分钟,语音识别服务器A2的5条待识别语音数据的总时长是2分钟,那么语音识别服务器A1的资源实际使用率是大于语音识别服务器A2的,可见现有的对语音识别服务器的资源分配的方法并不合理,此时应该将该识别请求分发到资源实际使用率较小的语音识别服务器A2,才更有利于实现语音识别服务器的资源均衡分配。本实施例利用待识别语音数据的总时长来表征资源实际使用率,能准确地体现出当前各语音识别服务器的资源的实际使用情况,并根据当前各语音识别服务器的资源的实际使用情况,来将语音识别请求合理的分发到资源实际使用率较低的语音识别服务器,有利于实现对语音识别服务器的资源均衡使用,提高语音识别请求的处理效率。
进一步地,本申请一实施例中,上述基于数据分析的资源分配装置,还包括:
第一判断模块,用于判断是否存在所述待识别语音数据的总时长大于预设时长阈值的第二语音识别服务器;
加入模块,用于若是,将所述第二语音识别服务器加入禁止处理新的语音识别请求的黑名单内。
本实施例中,预先设置的预设时长阈值,代表着语音识别服务器所能支持处理的最大的语音数据的时长数,如果该语音识别服务器在长时间内处理的语音数据的时长数都大于该预设时长阈值,即意味着该语音识别服务器长时间处于超负荷工作状态,则该语音识别服务器会受到严重的损坏甚至报废。为了保证语音识别服务器能够保持良好的使用寿命,负载均衡器需要时刻监控各个语音识别服务器的工作状态,当发现存在待识别语音数据的第一总时长大于预设时长阈值的第二语音识别服务器,则会将所述第二语音识别服务器移入暂不接收新的语音识别请求的黑名单内,即在一段时间内不会向该第二语音识别服务器分发新的语音识别请求,只有当第二语音识别服务器内的待处理的语音数据的总时长小于预设时长阈值后,才会将第二语音识别服务器从该黑名单内移除。在本实施例,当负载均衡器监控到某语音识别服务器处于超负荷工作状态时,会智能地停止向该语音识别服务器分发新的语音识别请求,来有效地对该语音识别服务器进行保护,保证了该语音识别服务器的使用寿命。
进一步地,本申请一实施例中,上述基于数据分析的资源分配装置,还包括:
第二计算模块,用于根据各所述语音识别服务器的待识别语音数据的总时长,计算出各所述语音识别服务器的待识别语音数据的平均时长;
筛选模块,用于筛选出待识别语音数据的总时长小于所述平均时长的第三语音识别服务器;
第二判断模块,用于经过第一预设时间后,判断所述第二语音识别服务器内的待识别语音数据的总时长是否大于所述预设时长阈值;
分配模块,用于若是,将所述第二语音识别服务器内的部分待识别语音数据分配至所述第三语音识别服务器,以使得经过分配后的所述第二语音识别服务器内的待识别语音数据的总时长小于所述预设时长阈值。
在上述第二计算模块和筛选模块中,根据各所述语音识别服务器的待识别语音数据的总时长,计算出各所述语音识别服务器的待识别语音数据的平均时长的步骤,具体为:对当前所有的语音识别服务器的待识别语音数据的总时长进行求和运算得到和值,再将该和值除以所有的语音识别服务器的数量,便能得到该平均时长,进一步地,可筛选出待识别语音数据的总时长小于所述平均时长的语音识别服务器,其中,语音识别服务器的数量由实际情况决定。
在上述第二判断模块和分配模块中,预先设置的第一预设时间,表示语音识别处理器在该第一预设时间内处于超负荷工作状态,几乎不会对语音识别处理器本身造成损坏。在本实施例,在第二语音识别服务器对待识别语音数据进行处理,如果在经过第一预设时间后,第二语音识别服务器内剩余的待识别语音数据的总时长小于上述预设时长阈值,则表明第二语音识别服务器并没有长时间处于超负荷工作状态;而如果在超过该第一预设时间后,第二语音识别服务器内剩余的待识别语音数据的总时长仍然大于上述预设时长阈值,则表明第二语音识别服务器长时间处于超负荷工作状态,这样会对第二语音识别服务器本身的使用寿命造成极大的影响。为了对第二语音识别服务器进行保护,保证语音识别服务器的使用寿命,此时需要将第二语音识别处理器内的部分未识别语音数据分配到其它语音识别服务器,例如第三语音识别服务器进行处理,该第三语音识别服务器为待识别语音数据的总时长小于该平均时长的语音识别服务器,其中,上述部分待识别语音数据可为第二语音识别服务器中所有的待识别语音数据中的任意部分的待识别语音数据,需要进行分配的部分待识别语音数据的时长大于或等于指定时长,上述指定时长为经过第一预设时间后的所述第二语音识别服务器内的待识别语音数据的总时长与所述预设时长阈值的差值。另外,将第二语音识别服务器内的部分待识别语音数据分配至待识别语音数据的总时长小于平均时长的第三语音识别服务器,第三语音识别服务器的数量根据实际情况而定,具体为:对第二语音识别服务器内的语音数据的实际时长数据进行分析,假如该实际时长数据不会很大,则可将语音识别服务器内的部分待识别语音数据只分配到待识别语音数据的总时长小于平均时长的某一个指定语音识别服务器,并且保证第二语音识别服务器在经过分配后,剩下的待识别语音数据能在经过该第一预设时间的处理后的总时长小于该预设时长阈值;或者假如该实际时长数据过大,则可将第二语音识别服务器内的部分待识别语音数据分配到待识别语音数据的总时长小于所述平均时长的多个指定语音识别服务器(具体数量根据实际情况设置),并且保证第二语音识别服务器在经过分配后,剩下的待识别语音数据能在经过该第一预设时间的处理后的总时长能小于该预设时长阈值。通过将负荷量大于预设值的语音识别服务器内的部分待识别语音数据分配到负荷量较小的一个或多个指定语音识别服务器,有效地保证了负荷量大的语音识别服务器的使用寿命,也进一步促进了各语音识别服务器的资源的均衡使用。
进一步地,本申请一实施例中,上述基于数据分析的资源分配装置,还包括:
第三判断模块,用于判断所述第一语音识别服务器是否处于正常工作状态;
第二比较模块,用于若否,对除所述第一语音识别服务器之外的其它语音识别服务器当前的待识别语音数据的总时长进行比较,以得到比较结果;
确定模块,用于根据所述比较结果,确定出用于处理所述语音识别请求的第四语音识别服务器,其中所述第四语音识别服务器处于正常工作状态;
第二分发模块,用于将所述语音识别请求分发至所述第四语音识别服务器。
本实施例中,在负载均衡器确定了将所述语音识别请求分发至第一语音识别服务器后,可能会出现第一语音识别服务器处于无法正常工作状态的情况,那么第一语音识别服务器就会无法对该语音识别请求进行响应反馈,以及后续的对与该语音识别请求相对应的语音数据的识别工作,使得整个流程无法正常运作,IVR系统不能收到第一语音识别服务器的识别结果,且用户无法及时得到IVR系统的回应,造成用户使用体验差。所以在本实施例,需要进一步确定第一语音识别服务器是否正常工作状态,如果判定第一语音识别服务器处于无法正常工作的状态,则将第一语音识别服务器排除掉,并对所述第一语音识别服务器之外的其它语音识别服务器的资源实际使用率进行分析,确定出用于处理所述语音识别请求的第四语音识别服务器,其中第四语音识别服务器当前的待识别语音数据的总时长在上述其它语音识别服务器之中是最少的,并在确认第四语音识别服务器处于正常工作状态后,将所述语音识别请求分发至所述第四语音识别服务器,以便该第四语音识别服务器进行对应处理。在本实施例,当第一语音识别服务器无法正常工作时,通过调用处于正常工作状态的第四语音识别服务器来对语音识别请求进行处理,有利于识别流程的正常运作,IVR系统能及时收到第四语音识别服务器的识别结果,且用户也能及时得到IVR系统的回应,保证了用户的使用体验。
进一步地,本申请一实施例中,上述确定模块,包括:
排序单元,用于按照待识别语音数据的总时长从小到大的顺序对所述其它语音识别服务器进行排序;
遍历单元,用于根据所述排序,遍历所述其它语音识别服务器;
判断单元,用于判断当前访问的语音识别服务器是否处于正常工作状态;
确定单元,用于若是,将所述当前访问的语音识别服务器确定为用于处理所述语音识别请求的所述第四语音识别服务器,并停止遍历。
本实施例中,根据上述比较结果,确定出用于处理所述语音识别请求的第四语音识别服务器的步骤,具体包括:当第一语音识别服务器为处于无法正常工作状态,则通过对除去第一语音识别服务器之外的其它各语音识别服务器的总时长进行分析,按照待识别语音数据的总时长从小到大的顺序,即递增的方式对其它各语音识别服务器进行排序,并根据该排序遍历上述的其它语音识别服务器,在每遍历到一个语音识别服务器时,如果确定该语音识别服务器处于正常工作状态,则将该语音识别服务器确定为用于处理所述语音识别请求的上述第四语音识别服务器,并将该语音识别请求分发至该语音识别服务器进行处理,并停止遍历。进一步地,如果在遍历结束后,都没有找到处于正常工作状态的语音识别服务器,则会向IVR系统返回处理失败的信息,即当前没有正常可用的语音识别服务器对上述语音识别请求进行处理,另外还会发出维修信息,以使得维修人员对处于无法正常工作状态的语音识别服务器进行维修。
进一步地,本申请一实施例中,上述基于数据分析的资源分配装置,还包括:
建立模块,用于与各所述语音识别服务器建立TCP(传输控制协议)长连接,以便通过所述TCP长连接与各所述语音识别服务器之间进行信息交互。
本实施例中,在负载均衡器进行初始化时,可与每个语音识别服务器建立的TCP(Transmission Control Protocol,传输控制协议)长连接,可选地,可与每一个语音识别服务器建立数量至少为1的TCP长连接,其中建立的TCP长连接的具体数量按实际情况进行确定。在该传输控制协议长连接成功建立后,当负载均衡器需要将IVR系统发送的关于某一语音数据的语音识别请求分发至某一语音识别服务器时,即可直接使用上述所建立的传输控制协议长连接,通过所述传输控制协议长连接与该语音识别服务器之间进行信息交互,从而省去了当需要负载均衡器来调用该语音识别服务器时,再去建立传输控制协议长连接所耗费的时间。另外,负载均衡器与每个语音识别服务器之间所建立的传输控制协议长连接的个数的具体取值可根据实际需要而定,可以为一个,也可以为多个,举例地,负载均衡器与语音识别服务器A建立了一个传输控制协议长连接,负载均衡器与语音识别服务器B建立了两个传输控制协议长连接,负载均衡器与语音识别服务器C建立了五个传输控制协议长连接。其中,建立多个传输控制协议长连接的好处在于:当负载均衡器同时接收到IVR系统发送的多个语音数据对应的多个语音识别请求,且确定多个语音识别请求均需要由同一个语音识别服务器进行处理时,可利用多个传输控制协议长连接分别将多个语音识别请求同时分发至该语音识别服务器,而如果只有一个传输控制协议长连接的话,则只能在分发完一个语音识别请求后再分发另一个语音识别请求,直至将该多个语音识别请求分发完毕,所以建立一定数量的传输控制协议长连接,能够有效的提高了语音识别请求的传输效率。
进一步地,本申请一实施例中,上述基于数据分析的资源分配装置,还包括:
第四判断模块,用于判断是否接收到所述第一语音识别服务器反馈的对于所述语音识别请求的响应信息;
转发模块,用于若是,将所述响应信息转发至所述IVR系统;
第二接收模块,用于接收由所述IVR系统发送的与所述语音识别请求对应的语音数据;
发送模块,用于将所述语音数据发送至所述第一语音识别服务器,以便所述第一语音识别服务器对所述语音数据进行识别。
本实施例中,在负载均衡器将所述语音识别请求分发到第一语音识别服务器后,第一语音识别服务器会对该语音识别请求的语法进行解析,如果解析成功则会向负载均衡器返回请求识别成功的响应信息,而如果解析失败,则会向负载均衡器返回错误。在负载均衡器接收到上述响应信息后,会将该响应信息转发至上述的IVR系统,IVR系统在接收到响应信息后会向负载均衡器发送与上述语音识别请求相对应的语音数据,在负载均衡器接收到该语音数据后便会将其转发到该第一语音识别服务器,之后第一语音识别服务器会根据语法,使用对应的语言模型对该语音数据进行识别,得到识别结果,并将该识别结果返回到负载均衡器,使得负载均衡器将该识别结果返回到IVR系统,以以实现IVR系统根据该识别结果与用户进行信息交互。
参照图5,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储语音识别请求以及待识别语音数据的时长等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于数据分析的资源分配方法。
上述处理器执行上述基于数据分析的资源分配方法的步骤:
接收IVR(互动式语音应答)系统发送的语音识别请求;
分别计算各语音识别服务器当前的待识别语音数据的总时长;
对各所述总时长进行比较,确定所述待识别语音数据的总时长最少的语音识别服务器,并将所述总时长最少的语音识别服务器确定为用于处理所述语音识别请求的第一语音识别服务器;
将所述语音识别请求分发至所述第一语音识别服务器。
在一实施例,所述将所述语音识别请求分发至所述第一语音识别服务器的步骤之后,包括:
判断是否存在所述待识别语音数据的总时长大于预设时长阈值的第二语音识别服务器;
若是,将所述第二语音识别服务器加入禁止处理新的语音识别请求的黑名单内。
在一实施例,所述将所述第二语音识别服务器加入禁止处理新的语音识别请求的黑名单内的步骤之后,包括:
根据各所述语音识别服务器的待识别语音数据的总时长,计算出各所述语音识别服务器的待识别语音数据的平均时长;
筛选出待识别语音数据的总时长小于所述平均时长的第三语音识别服务器;
经过第一预设时间后,判断所述第二语音识别服务器内的待识别语音数据的总时长是否大于所述预设时长阈值;
若是,将所述第二语音识别服务器内的部分待识别语音数据分配至所述第三语音识别服务器,以使得经过分配后的所述第二语音识别服务器内的待识别语音数据的总时长小于所述预设时长阈值。
在一实施例,所述将所述语音识别请求分发至所述第一语音识别服务器的步骤之后,包括:
判断所述第一语音识别服务器是否处于正常工作状态;
若否,对除所述第一语音识别服务器之外的其它语音识别服务器当前的待识别语音数据的总时长进行比较,以得到比较结果;
根据所述比较结果,确定出用于处理所述语音识别请求的第四语音识别服务器,其中所述第四语音识别服务器处于正常工作状态;
将所述语音识别请求分发至所述第四语音识别服务器。
在一实施例,所述根据所述比较结果,确定出用于处理所述语音识别请求的第四语音识别服务器的步骤,包括:
按照待识别语音数据的总时长从小到大的顺序对所述其它语音识别服务器进行排序;
根据所述排序,遍历所述其它语音识别服务器;
判断当前访问的语音识别服务器是否处于正常工作状态;
若是,将所述当前访问的语音识别服务器确定为用于处理所述语音识别请求的所述第四语音识别服务器,并停止遍历。
在一实施例,所述接收IVR系统发送的语音识别请求的步骤之前,包括:
与各所述语音识别服务器建立TCP(传输控制协议)长连接,以便通过所述TCP长连接与各所述语音识别服务器之间进行信息交互。
在一实施例,所述将所述语音识别请求分发至所述第一语音识别服务器的步骤之后,包括:
判断是否接收到所述第一语音识别服务器反馈的对于所述语音识别请求的响应信息;
若是,将所述响应信息转发至所述IVR系统;
接收由所述IVR系统发送的与所述语音识别请求对应的语音数据;
将所述语音数据发送至所述第一语音识别服务器,以便所述第一语音识别服务器对所述语音数据进行识别。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种基于数据分析的资源分配方法,具体为:
接收IVR(互动式语音应答)系统发送的语音识别请求;
分别计算各语音识别服务器当前的待识别语音数据的总时长;
对各所述总时长进行比较,确定所述待识别语音数据的总时长最少的语音识别服务器,并将所述总时长最少的语音识别服务器确定为用于处理所述语音识别请求的第一语音识别服务器;
将所述语音识别请求分发至所述第一语音识别服务器。
在一实施例,所述将所述语音识别请求分发至所述第一语音识别服务器的步骤之后,包括:
判断是否存在所述待识别语音数据的总时长大于预设时长阈值的第二语音识别服务器;
若是,将所述第二语音识别服务器加入禁止处理新的语音识别请求的黑名单内。
在一实施例,所述将所述第二语音识别服务器加入禁止处理新的语音识别请求的黑名单内的步骤之后,包括:
根据各所述语音识别服务器的待识别语音数据的总时长,计算出各所述语音识别服务器的待识别语音数据的平均时长;
筛选出待识别语音数据的总时长小于所述平均时长的第三语音识别服务器;
经过第一预设时间后,判断所述第二语音识别服务器内的待识别语音数据的总时长是否大于所述预设时长阈值;
若是,将所述第二语音识别服务器内的部分待识别语音数据分配至所述第三语音识别服务器,以使得经过分配后的所述第二语音识别服务器内的待识别语音数据的总时长小于所述预设时长阈值。
在一实施例,所述将所述语音识别请求分发至所述第一语音识别服务器的步骤之后,包括:
判断所述第一语音识别服务器是否处于正常工作状态;
若否,对除所述第一语音识别服务器之外的其它语音识别服务器当前的待识别语音数据的总时长进行比较,以得到比较结果;
根据所述比较结果,确定出用于处理所述语音识别请求的第四语音识别服务器,其中所述第四语音识别服务器处于正常工作状态;
将所述语音识别请求分发至所述第四语音识别服务器。
在一实施例,所述根据所述比较结果,确定出用于处理所述语音识别请求的第四语音识别服务器的步骤,包括:
按照待识别语音数据的总时长从小到大的顺序对所述其它语音识别服务器进行排序;
根据所述排序,遍历所述其它语音识别服务器;
判断当前访问的语音识别服务器是否处于正常工作状态;
若是,将所述当前访问的语音识别服务器确定为用于处理所述语音识别请求的所述第四语音识别服务器,并停止遍历。
在一实施例,所述接收IVR系统发送的语音识别请求的步骤之前,包括:
与各所述语音识别服务器建立TCP(传输控制协议)长连接,以便通过所述TCP长连接与各所述语音识别服务器之间进行信息交互。
在一实施例,所述将所述语音识别请求分发至所述第一语音识别服务器的步骤之后,包括:
判断是否接收到所述第一语音识别服务器反馈的对于所述语音识别请求的响应信息;
若是,将所述响应信息转发至所述IVR系统;
接收由所述IVR系统发送的与所述语音识别请求对应的语音数据;
将所述语音数据发送至所述第一语音识别服务器,以便所述第一语音识别服务器对所述语音数据进行识别。
综上所述,本申请中提供的基于数据分析的资源分配方法、装置、计算机设备和存储介质,接收IVR系统发送的语音识别请求;分别计算各语音识别服务器当前的待识别语音数据的总时长;对各所述总时长进行比较,确定所述待识别语音数据的总时长最少的语音识别服务器,并将所述总时长最少的语音识别服务器确定为用于处理所述语音识别请求的第一语音识别服务器;将所述识别请求分发至所述第一语音识别服务器。本申请通过对各语音识别服务器当前的待识别语音数据的总时长进行比较分析,来选择合理的语音识别服务器处理接收到的语音识别请求,有利于实现对语音识别服务器的资源均衡使用,提高语音识别请求的处理效率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储与一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种基于数据分析的资源分配方法,其特征在于,包括:
接收IVR(互动式语音应答)系统发送的语音识别请求;
分别计算各语音识别服务器当前的待识别语音数据的总时长;
对各所述总时长进行比较,确定所述待识别语音数据的总时长最少的语音识别服务器,并将所述总时长最少的语音识别服务器确定为用于处理所述语音识别请求的第一语音识别服务器;
将所述语音识别请求分发至所述第一语音识别服务器。
2.根据权利要求1所述的基于数据分析的资源分配方法,其特征在于,所述将所述语音识别请求分发至所述第一语音识别服务器的步骤之后,包括:
判断是否存在所述待识别语音数据的总时长大于预设时长阈值的第二语音识别服务器;
若是,将所述第二语音识别服务器加入禁止处理新的语音识别请求的黑名单内。
3.根据权利要求2所述的基于数据分析的资源分配方法,其特征在于,所述将所述第二语音识别服务器加入禁止处理新的语音识别请求的黑名单内的步骤之后,包括:
根据各所述语音识别服务器的待识别语音数据的总时长,计算出各所述语音识别服务器的待识别语音数据的平均时长;
筛选出待识别语音数据的总时长小于所述平均时长的第三语音识别服务器;
经过第一预设时间后,判断所述第二语音识别服务器内的待识别语音数据的总时长是否大于所述预设时长阈值;
若是,将所述第二语音识别服务器内的部分待识别语音数据分配至所述第三语音识别服务器,以使得经过分配后的所述第二语音识别服务器内的待识别语音数据的总时长小于所述预设时长阈值。
4.根据权利要求1所述的基于数据分析的资源分配方法,其特征在于,所述将所述语音识别请求分发至所述第一语音识别服务器的步骤之后,包括:
判断所述第一语音识别服务器是否处于正常工作状态;
若否,对除所述第一语音识别服务器之外的其它语音识别服务器当前的待识别语音数据的总时长进行比较,以得到比较结果;
根据所述比较结果,确定出用于处理所述语音识别请求的第四语音识别服务器,其中所述第四语音识别服务器处于正常工作状态;
将所述语音识别请求分发至所述第四语音识别服务器。
5.根据权利要求4所述的基于数据分析的资源分配方法,其特征在于,所述根据所述比较结果,确定出用于处理所述语音识别请求的第四语音识别服务器的步骤,包括:
按照待识别语音数据的总时长从小到大的顺序对所述其它语音识别服务器进行排序;
根据所述排序,遍历所述其它语音识别服务器;
判断当前访问的语音识别服务器是否处于正常工作状态;
若是,将所述当前访问的语音识别服务器确定为用于处理所述语音识别请求的所述第四语音识别服务器,并停止遍历。
6.根据权利要求1所述的基于数据分析的资源分配方法,其特征在于,所述接收IVR系统发送的语音识别请求的步骤之前,包括:
与各所述语音识别服务器建立TCP(传输控制协议)长连接,以便通过所述TCP长连接与各所述语音识别服务器进行信息交互。
7.根据权利要求1所述的基于数据分析的资源分配方法,其特征在于,所述将所述语音识别请求分发至所述第一语音识别服务器的步骤之后,包括:
判断是否接收到所述第一语音识别服务器反馈的对于所述语音识别请求的响应信息;
若是,将所述响应信息转发至所述IVR系统;
接收由所述IVR系统发送的与所述语音识别请求对应的语音数据;
将所述语音数据发送至所述第一语音识别服务器,以便所述第一语音识别服务器对所述语音数据进行识别。
8.一种基于数据分析的资源分配装置,其特征在于,包括:
第一接收模块,用于接收IVR系统发送的语音识别请求;
计算模块,用于分别计算各语音识别服务器当前的待识别语音数据的总时长;
比较模块,用于对各所述总时长进行比较,得出所述待识别语音数据的总时长最少的语音识别服务器,并将所述总时长最少的语音识别服务器确定为用于处理所述语音识别请求的第一语音识别服务器;
第一分发模块,用于将所述识别请求分发至所述第一语音识别服务器。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811340885.4A CN109462647A (zh) | 2018-11-12 | 2018-11-12 | 基于数据分析的资源分配方法、装置和计算机设备 |
PCT/CN2018/124400 WO2020098100A1 (zh) | 2018-11-12 | 2018-12-27 | 基于数据分析的资源分配方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811340885.4A CN109462647A (zh) | 2018-11-12 | 2018-11-12 | 基于数据分析的资源分配方法、装置和计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109462647A true CN109462647A (zh) | 2019-03-12 |
Family
ID=65610097
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811340885.4A Pending CN109462647A (zh) | 2018-11-12 | 2018-11-12 | 基于数据分析的资源分配方法、装置和计算机设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109462647A (zh) |
WO (1) | WO2020098100A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109819057A (zh) * | 2019-04-08 | 2019-05-28 | 科大讯飞股份有限公司 | 一种负载均衡方法及系统 |
CN110428840A (zh) * | 2019-07-19 | 2019-11-08 | 平安科技(深圳)有限公司 | 语音识别系统中的负载均衡实现方法、装置以及计算机设备 |
CN111933132A (zh) * | 2020-07-13 | 2020-11-13 | 深圳市优必选科技股份有限公司 | 语音识别方法、系统、终端设备及计算机可读存储介质 |
CN112466283A (zh) * | 2020-10-30 | 2021-03-09 | 北京仿真中心 | 一种协同软件语音识别系统 |
CN116386644A (zh) * | 2023-06-07 | 2023-07-04 | 百融至信(北京)科技有限公司 | 一种asr资源方的路由控制方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140337022A1 (en) * | 2013-02-01 | 2014-11-13 | Tencent Technology (Shenzhen) Company Limited | System and method for load balancing in a speech recognition system |
CN104182279A (zh) * | 2014-02-26 | 2014-12-03 | 无锡天脉聚源传媒科技有限公司 | 一种任务调度方法、装置及系统 |
CN104581219A (zh) * | 2014-12-22 | 2015-04-29 | 浙江工业大学 | 一种流媒体转发服务器的控制方法 |
CN106325981A (zh) * | 2015-06-19 | 2017-01-11 | 阿里巴巴集团控股有限公司 | 一种任务调度方法及装置 |
CN107707586A (zh) * | 2016-08-08 | 2018-02-16 | 北京京东尚科信息技术有限公司 | 负载均衡方法和装置 |
US20180295044A1 (en) * | 2017-04-05 | 2018-10-11 | Linkedin Corporation | Automated management of service instances |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1571317A (zh) * | 2003-07-25 | 2005-01-26 | 华为技术有限公司 | 无线网络控制器的传输层资源分配方法 |
CN106101232A (zh) * | 2016-06-16 | 2016-11-09 | 北京思源置地科技有限公司 | 负载均衡方法及装置 |
CN108337275A (zh) * | 2017-01-19 | 2018-07-27 | 百度在线网络技术(北京)有限公司 | 用于分发服务器的任务分发方法、装置以及设备 |
CN106847291A (zh) * | 2017-02-20 | 2017-06-13 | 成都启英泰伦科技有限公司 | 一种本地和云端相结合的语音识别系统及方法 |
-
2018
- 2018-11-12 CN CN201811340885.4A patent/CN109462647A/zh active Pending
- 2018-12-27 WO PCT/CN2018/124400 patent/WO2020098100A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140337022A1 (en) * | 2013-02-01 | 2014-11-13 | Tencent Technology (Shenzhen) Company Limited | System and method for load balancing in a speech recognition system |
CN104182279A (zh) * | 2014-02-26 | 2014-12-03 | 无锡天脉聚源传媒科技有限公司 | 一种任务调度方法、装置及系统 |
CN104581219A (zh) * | 2014-12-22 | 2015-04-29 | 浙江工业大学 | 一种流媒体转发服务器的控制方法 |
CN106325981A (zh) * | 2015-06-19 | 2017-01-11 | 阿里巴巴集团控股有限公司 | 一种任务调度方法及装置 |
CN107707586A (zh) * | 2016-08-08 | 2018-02-16 | 北京京东尚科信息技术有限公司 | 负载均衡方法和装置 |
US20180295044A1 (en) * | 2017-04-05 | 2018-10-11 | Linkedin Corporation | Automated management of service instances |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109819057A (zh) * | 2019-04-08 | 2019-05-28 | 科大讯飞股份有限公司 | 一种负载均衡方法及系统 |
CN109819057B (zh) * | 2019-04-08 | 2020-09-11 | 科大讯飞股份有限公司 | 一种负载均衡方法及系统 |
CN110428840A (zh) * | 2019-07-19 | 2019-11-08 | 平安科技(深圳)有限公司 | 语音识别系统中的负载均衡实现方法、装置以及计算机设备 |
WO2021012506A1 (zh) * | 2019-07-19 | 2021-01-28 | 平安科技(深圳)有限公司 | 语音识别系统中的负载均衡实现方法、装置以及计算机设备 |
CN111933132A (zh) * | 2020-07-13 | 2020-11-13 | 深圳市优必选科技股份有限公司 | 语音识别方法、系统、终端设备及计算机可读存储介质 |
CN112466283A (zh) * | 2020-10-30 | 2021-03-09 | 北京仿真中心 | 一种协同软件语音识别系统 |
CN112466283B (zh) * | 2020-10-30 | 2023-12-01 | 北京仿真中心 | 一种协同软件语音识别系统 |
CN116386644A (zh) * | 2023-06-07 | 2023-07-04 | 百融至信(北京)科技有限公司 | 一种asr资源方的路由控制方法及装置 |
CN116386644B (zh) * | 2023-06-07 | 2024-03-22 | 百融至信(北京)科技有限公司 | 一种asr资源方的路由控制方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2020098100A1 (zh) | 2020-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109462647A (zh) | 基于数据分析的资源分配方法、装置和计算机设备 | |
CN109873909B (zh) | 一种语音呼叫方法、装置和设备及计算机存储介质 | |
CN105808694A (zh) | 在线客服应答系统及方法 | |
CN110333937A (zh) | 任务分发方法、装置、计算机设备和存储介质 | |
US7151826B2 (en) | Third party coaching for agents in a communication system | |
CN108073600A (zh) | 一种智能问答交互方法、装置以及电子设备 | |
CN109760041A (zh) | 基于聊天机器人的云管理系统及其操作方法 | |
JP2002044261A (ja) | 階層化された制御アーキテクチャを持つマルチメディア顧客ケアセンタ | |
CN107995377A (zh) | 客服管理方法、电子装置及计算机可读存储介质 | |
EP3246857A1 (en) | Computer-implemented system and method for facilitating interactions via automatic agent responses | |
KR101975320B1 (ko) | 빅데이터 및 인공 지능 기반 콜 센터 공유 서비스 제공 방법 및 시스템 | |
CN113840040B (zh) | 一种人机协作的外呼方法、装置、设备及存储介质 | |
CN102594912A (zh) | 服务器架构下的数据处理方法、服务器及服务器架构 | |
CN109544326A (zh) | 业务请求响应方法、装置、计算机设备和存储介质 | |
CN111916071A (zh) | 通话呼叫方法、装置、计算机设备和存储介质 | |
CN113726961A (zh) | 外呼数量的确定方法、装置、外呼系统及存储介质 | |
CN109426551A (zh) | 一种事务处理方法及系统 | |
CN116484985A (zh) | 网点业务预约方法、装置、系统及电子设备 | |
CN102546712A (zh) | 一种基于分布式业务网络的消息传输方法、设备和系统 | |
CN115080979A (zh) | 安全漏洞管控平台及方法 | |
CN111556208B (zh) | 一种客服在线转接的方法及装置 | |
CN109040491A (zh) | 挂机行为处理方法、装置、计算机设备及存储介质 | |
CN109034643A (zh) | 在线翻译的订单处理方法及装置、在线翻译的方法及装置 | |
CN114222029A (zh) | 智能客服通话方法、装置、计算机设备及存储介质 | |
CN114827361A (zh) | 外呼的处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190312 |