CN111477229B - 语音识别请求处理方法和装置 - Google Patents
语音识别请求处理方法和装置 Download PDFInfo
- Publication number
- CN111477229B CN111477229B CN202010294899.8A CN202010294899A CN111477229B CN 111477229 B CN111477229 B CN 111477229B CN 202010294899 A CN202010294899 A CN 202010294899A CN 111477229 B CN111477229 B CN 111477229B
- Authority
- CN
- China
- Prior art keywords
- connection
- voice recognition
- request
- bound
- connection pool
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- 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/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Abstract
本发明公开语音识别请求处理方法和装置,其中,一种语音识别请求处理方法,包括:接收语音识别请求;解析所述语音识别请求以获得所述语音识别请求中包含的业务类型参数和请求地址,创建与所述语音识别请求唯一对应的通道;确定已有连接池中是否存在与所述请求地址绑定的连接池;若存在与所述请求地址绑定的连接池,将所述唯一对应的通道与从所述绑定的连接池中选择的某一连接建立连接;以及若不存在,基于所述语音识别请求的业务类型创建一个与所述业务类型对应的新的连接池,将所述新的连接池中的某一连接与所述语音识别请求地址绑定。
Description
技术领域
本发明属于智能对话技术领域,尤其涉及语音识别请求处理方法和装置。
背景技术
现有技术中,连接池是创建和管理一个连接的缓冲池的技术,这些连接准备好被任何需要它们的线程使用。
目前市面上的连接池包括:数据库连接池,Redis连接池,socket连接池等....是针对于一些通用中间件或者通信连接提供的一种连接“汇集”起来的技术,以达到复用,和统一管理的目的。
连接(数据库,缓存,socket)是一种关键的、有限的资源,这一点在多用户的网页应用程序中体现得尤为突出。对连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标
连接池的优势在于减少连接创建时间,目的是为了减少创建和销毁连接时所产生的开销。
如果连接是“循环”使用的,创建连接花销就可避免。
连接池能够使性能最大化,同时还能将资源利用控制在一定的水平之下,如果超过该水平,应用程序将崩溃而不仅仅是变慢。
发明人在实现本申请的过程中发现,现有方案至少存在以下缺陷:
市面上的连接池基本上都是针对通用的场景情况定制的一些连接池,很难针对某一领域或者特殊场景去使用他们。比如语音识别的领域。大部分的连接池在初始化的时候容量大小就已经固定了,没办法根据提供连接的服务扩容而实现动态增加连接池的容量。包括获取连接的等待时间限制,执行超时时间限制等属性。在一些场景中,常常需要将连接池根据不同的业务隔离开,每个业务索要支持的连接池的配置需要单独管理,目前市面上的连接不支持这些特殊场景。
发明内容
本发明实施例提供一种语音识别请求处理方法及装置,用于至少解决上述技术问题之一。
第一方面,本发明实施例提供一种语音识别请求处理方法,包括:接收语音识别请求;解析所述语音识别请求以获得所述语音识别请求中包含的业务类型参数和请求地址,创建与所述语音识别请求唯一对应的通道;确定已有连接池中是否存在与所述请求地址绑定的连接池;若存在与所述请求地址绑定的连接池,将所述唯一对应的通道与从所述绑定的连接池中选择的某一连接建立连接;以及若不存在,基于所述语音识别请求的业务类型创建一个与所述业务类型对应的新的连接池,将所述新的连接池中的某一连接与所述语音识别请求地址绑定。
第二方面,本发明实施例提供一种语音识别请求处理装置,包括:接收模块,配置为接收语音识别请求;解析创建模块,配置为解析所述语音识别请求以获得所述语音识别请求中包含的业务类型参数和请求地址,创建与所述语音识别请求唯一对应的通道;确定模块,配置为确定已有连接池中是否存在与所述请求地址绑定的连接池;连接绑定模块,配置为若存在与所述请求地址绑定的连接池,将所述唯一对应的通道与从所述绑定的连接池中选择的某一连接建立连接;以及新建绑定模块,配置为若不存在,基于所述语音识别请求的业务类型创建一个与所述业务类型对应的新的连接池,将所述新的连接池中的某一连接与所述语音识别请求地址绑定。
第三方面,提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例的语音识别请求处理方法的步骤。
第四方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行本发明任一实施例的语音识别请求处理方法的步骤。
本申请的方法和装置提供的方案通过对语音识别请求进行解析,之后确定是否之前有绑定的连接池,如果有,将与语音识别请求的请求地址唯一对应的通道与该连接池中的一个连接对接,从而之后的数据都该连接进行处理如果没有,则新建一个连接池,将该连接池中的一个连接与该唯一对应的通道绑定。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的一种语音识别请求处理方法的流程图;
图2为本发明一实施例提供的另一种语音识别请求处理方法的流程图;
图3为本发明一实施例提供的一种语音识别请求处理方法的一具体实施例的流程图;
图4是本发明实施例的语音识别请求处理方案一具体实施例的语音识别平台的架构图;
图5是本发明实施例的语音识别请求处理方案一具体实施例的一种语音识别服务websocket连接池的流程图;
图6为本发明实施例的语音识别请求处理方案一具体实施例中语音识别示例图;
图7为本发明实施例的语音识别请求处理方案一具体实施例的连接池具体操作详解流程图;
图8为本发明一实施例提供的一种语音识别请求处理装置的框图;
图9是本发明一实施例提供的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,其示出了本申请的语音识别请求处理方法的一实施例的流程图,本实施例的语音识别请求处理方法可以适用于对用户的请求进行分配处理,本申请在此没有限制。
如图1所示,在步骤101中,接收语音识别请求;
在步骤102中,解析所述语音识别请求以获得所述语音识别请求中包含的业务类型参数和请求地址,创建与所述语音识别请求唯一对应的通道;
在步骤103中,确定已有连接池中是否存在与所述请求地址绑定的连接池;
在步骤104中,若存在与所述请求地址绑定的连接池,将所述唯一对应的通道与从所述绑定的连接池中选择的某一连接建立连接;
在步骤105中,若不存在,基于所述语音识别请求的业务类型创建一个与所述业务类型对应的新的连接池,将所述新的连接池中的某一连接与所述语音识别请求地址绑定。
在本实施例中,对于步骤101,语音识别请求处理装置接收来自用户的语音识别请求,其中,该语音识别请求可以是Http请求,也可以是websocket请求,本申请在此没有限制。之后,对于步骤102,语音识别请求处理装置对该接收的语音识别请求进行解析,以获得该语音识别请求中包含的业务类型参数和请求地址,其中,业务类型参数可以是例如应用场景之类地,例如有些应用场景可能只需要做简单的唤醒词、命令词地识别,有些应用场景需要识别整句话,在此不再赘述,本申请在此没有限制。另外,解析请求地址主要是为了对于同一请求地址的语音识别请求可以一直使用同一个连接池建立长连接进行处理。解析之后还需要为该语音识别请求对应的请求地址创建唯一对应的通道,从而可以将该识别请求与其他识别请求的请求地址隔开,万一该通道出问题也不会影响到其他通道。
之后,对于步骤103,语音识别请求处理装置确定已有连接池中是否存在与该请求地址绑定的连接池,其中,当该语音识别请求的请求地址之前的语音识别请求都是由某一个连接池处理的,则该请求地址就会与该连接池绑定。然后,对于步骤104,若存在与该请求地址绑定的连接池,将该唯一对应的通道与从与该请求地址绑定的连接池中选择的某一连接建立连接。对于步骤105,若不存在,基于该语音识别请求的业务类型创建一个与所述业务类型对应的新的连接池,将所述新的连接池中的某一连接与所述语音识别请求地址绑定。从而不管之前是否存在与该请求地址绑定的连接池,都会最终分配一个连接与该语音识别请求对应的请求地址进行绑定,从而该语音识别请求后续的语音识别数据流能够得到稳定地处理。
本实施例的方法,通过对语音识别请求进行解析,之后确定是否之前有绑定的连接池,如果有,将与语音识别请求的请求地址唯一对应的通道与该连接池中的一个连接对接,从而之后的数据都该连接进行处理如果没有,则新建一个连接池,将该连接池中的一个连接与该唯一对应的通道绑定。
进一步参考图2,其示出了本申请的语音识别请求处理方法的一实施例的流程图。该流程图主要是针对流程图1中步骤104“若存在与所述请求地址绑定的连接池,将所述唯一对应的通道与从所述绑定的连接池中选择的某一连接建立连接”进一步限定的步骤的流程图。
如图2所示,在步骤201中,若存在与所述请求地址绑定的连接池,判断所述绑定的连接池中是否存在空闲的连接;
在步骤202中,若所述绑定的连接池中存在空闲的连接,将所述唯一对应的通道与所述空闲的连接绑定;
在步骤203中,若所述绑定的连接池中不存在空闲的连接,等待直至所述连接池中存在空闲的连接时,将所述唯一对应的通道与所述空闲的连接绑定。
在本实施例中,对于步骤201,如果存在与该请求地址绑定的连接池,则先判断该连接池中是否存在空闲的连接。之后,对于步骤202,如果存在空闲的连接,则将该与请求地址唯一对应的通道与空闲的连接中某一连接绑定。对于步骤203,如果不存在空闲的连接,则等待该连接池出现空闲的连接时,将该唯一对应的通道与新出现的空闲的连接绑定。另外,如过连接池中的连接数没有达到连接数上限时,也可以新建新的连接,在此不再赘述。当然,该过程可以通过队列的方式实现,将等待空闲连接的请求按照时间的先后顺序排成一个队列,之后队列中先来的就可以获得有空闲连接时先分配的权力,从而使得等待也变得更加有秩序,本申请在此没有限制,在此不再赘述。
本实施例的方法通过在确定绑定的连接池之后,判断连接池中是否存在空闲的连接,如果存在,可以直接与空闲的连接中之一绑定,如果不存在,则等待出现空闲的连接再与之绑定。
在一些可选的实施例中,上述方法还包括:接收从所述请求地址发送与所述语音识别请求关联的语音识别流;经由语音识别系统对所述语音识别流进行语音识别,将获取所述语音识别系统的识别结果并异步反馈至所述请求地址;以及监听是否反馈成功,若反馈失败,重新反馈直至反馈成功。通过在请求地址与连接池中的某一连接绑定之后,开始经由该连接接收用户语音识别数据流,将该语音识别流发送至语音识别系统进行处理,然后接收语音识别系统返回的识别结果并存储,然后异步反馈至请求地址,在反馈的时候设置监听,如果反馈失败则再次反馈,反馈成功则完成此次语音识别。
进一步可选的,当一个语音识别流结束时,会有一个结束符,因此若语音识别请求处理装置检测到语音识别流的结束符,则说明该语音识别流结束了,此时可以通过发送心跳包的方式维护该连接,直至该连接的空闲时间超时时关闭所述连接,通过对该连接维护一段时间,可以使得这段时间如果该连接再次收到语音识别流可以免去再次连接的过程,直接对该请求地址的语音识别流进行处理。
在另一些可选的实施例中,监听各连接池的配置属性是否满足当前需求;以及若不满足,动态调整所述各连接池的配置属性以使所述各连接池的配置属性满足所述当前需求。通过配置连接池的属性分布式化,监听各连接池的配置资源的变化,动态修改各连接池配置属性,不需要每次修改配置都需要修改代码以及发布新的版本,提高服务灵活性。其中,支持动态配置和调整的包括:连接池的最大连接数,获取连接超时时间,识别文件大小限制,识别时长限制,连接空闲时长限制,对不同的识别资源服务做隔离,灵活适配相关配置做到限流,自由伸缩。保证语音识别核心的服务承载能力,拦截超出的并发请求。
在进一步可选的实施例中,连接为websocket连接。websocket连接对语音识别有更好的适配性。
下面对通过描述发明人在实现本发明的过程中遇到的一些问题和对最终确定的方案的一个具体实施例进行说明,以使本领域技术人员更好地理解本申请的方案。
Websocket连接是属于双工的长连接,是一个持久存在的连接,连接完成后,可以反复使用,直到连接关闭或者出现通信问题。与常规的http协议不同,websocket连接可以不断向客户端推送返回。为了提高连接的复用性以及管理连接,我们会建立连接池。常规的连接池的阻塞式IO,性能低下。语音识别内核服务在识别文件流时,当出现大的文件时,识别效率很低下,同时占用内核资源,对于http请求传输文件时,对于大的文件流需要限制其大小,http适合一句话识别的场景。对于语音识别效率高更适合使用websocket协议流式计算识别。每个识别资源使用行业领域不一样,同时需要支持的负载压力也不同。所以本专利所设计的连接池结合语音识别场景应运而生。
本申请实施例中所设计的连接池与语音识别领域的业务紧密结合,适应复杂多变的高并发场景,并且同时支持多种常见协议的请求(http,websocket)以便提供对下游服务的支持。限制识别音频的大小,降低识别服务计算的压力。可以动态修改连接池属性以便灵活地支持下游服务的扩容以及可以根据请求负载变化实时调整保证系统运行的稳定性与可伸缩性。采用异步技术提高连接池的性能,减少开销。根据语音识别适用行业领域的识别资源做到连接和配置参数的隔离(连接池容量,识别音频流大小,等待时间限制等),当某个识别资源服务崩溃,不会造成事故蔓延,保证其他资源识别的稳定性。
本连接池与语音识别紧密结合,做到根据不同的资源对识别连接做隔离,动态修改根据不同识别资源的后端承载服务建立的连接,因为不同的识别领域对应的客户群和识别所需要的并发能力不一样。减少资源浪费,连接池设计采用NIO异步设计,减少线程开销。非阻塞式发送,利用队列,在连接耗尽时候,缓存请求,直至等待时长过期,对池中相关连接定期发送心跳保持长连接。
设计思路:
1、识别的连接正常情况下需保持长连接。
2、避免不断创建连接的情况,建立并维护连接池,优先选择空闲的连接,否则等待,直至有空闲连接或者等待时长超时。
3、对每一次语音识别请求,分配一个通道,并绑定独占其中一个连接,直到请求结束。
4、连接池需能够根据接收到的请求数的大小动态调整,并至少维持一个长连接,在请求量大的时候,可以创建新的连接。直至到连接池的最大连接数。
5、支持动态调整包括:连接池的最大连接数,获取连接超时时间,识别文件大小限制,识别时长限制,连接空闲时长限制,对不同的识别资源服务做隔离,灵活适配相关配置做到限流,自由伸缩。保证语音识别核心的服务承载能力,拦截超出的并发请求。
设计方案:
1、对每次请求中的识别资源,创建唯一通道,并尝试从连接池中获取一个连接绑定
2、如果请求地址关联对连接池已经存在,则直接从连接池中选择一个连接;否则创建连接池
3、如果连接池中没有空闲的连接并且未达到连接数上限,则创建一个连接;否则等待空闲连接
4、成功获取连接后,立即锁定该连接,该连接不得再绑定其他通道
5、发送语音识别请求配置文件,成功后会标记通道可用于发送文件流数据;如果失败,立即释放连接;
6、发送语音识别文件流,结束后,框架会自动发送结束符给语音识别服务并监听连接返回(实时识别方式下会对每个流设定一个返回监听);如果失败,立即释放连接;
7、语音识别服务请求完成后,异步返回给调用方数据,并且释放连接;
8、连接池继续维护当前连接,按固定频次发送连接ping包,保持连接可复用;
9、如果连接空闲时间超过一定阀值,则关闭该连接,但连接池至少保持一个在线连接;
10、隔离不同识别资源的连接池,在请求时候根据识别资源选取相应的连接池并申请连接;
11、配置属性分布式化,监听相关配置资源的变化,动态修改相关配置属性,不需要每次修改配置都需要修改代码以及发布新的版本,提高服务灵活性。
请参考图8,其示出了本发明一实施例提供的一种语音识别请求处理装置的框图。
如图8所示,语音识别请求处理装置800,包括接收模块810、解析创建模块820、确定模块830、连接绑定模块840和新建绑定模块850。
其中,接收模块810,配置为接收语音识别请求;解析创建模块820,配置为解析所述语音识别请求以获得所述语音识别请求中包含的业务类型参数和请求地址,创建与所述语音识别请求唯一对应的通道;确定模块830,配置为确定已有连接池中是否存在与所述请求地址绑定的连接池;连接绑定模块840,配置为若存在与所述请求地址绑定的连接池,将所述唯一对应的通道与从所述绑定的连接池中选择的某一连接建立连接;以及新建绑定模块850,配置为若不存在,基于所述语音识别请求的业务类型创建一个与所述业务类型对应的新的连接池,将所述新的连接池中的某一连接与所述语音识别请求地址绑定。
在一些可选的实施例中,所述连接绑定模块进一步配置为:若存在与所述请求地址绑定的连接池,判断所述绑定的连接池中是否存在空闲的连接;若所述绑定的连接池中存在空闲的连接,将所述唯一对应的通道与所述空闲的连接绑定;若所述绑定的连接池中不存在空闲的连接,等待直至所述连接池中存在空闲的连接时,将所述唯一对应的通道与所述空闲的连接绑定。
应当理解,图8中记载的诸模块与参考图1和图2中描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作和特征以及相应的技术效果同样适用于图8中的诸模块,在此不再赘述。
值得注意的是,本申请的实施例中的模块并不用于限制本申请的方案,例如接收模块可以描述为接收语音识别请求的模块。另外,还可以通过硬件处理器来实现相关功能模块,例如接收模块也可以用处理器实现,在此不再赘述。
在另一些实施例中,本发明实施例还提供了一种非易失性计算机存储介质,计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的语音识别请求处理方法;
作为一种实施方式,本发明的非易失性计算机存储介质存储有计算机可执行指令,计算机可执行指令设置为:
接收语音识别请求;
解析所述语音识别请求以获得所述语音识别请求中包含的业务类型参数和请求地址,创建与所述语音识别请求唯一对应的通道;
确定已有连接池中是否存在与所述请求地址绑定的连接池;
若存在与所述请求地址绑定的连接池,将所述唯一对应的通道与从所述绑定的连接池中选择的某一连接建立连接;
若不存在,基于所述语音识别请求的业务类型创建一个与所述业务类型对应的新的连接池,将所述新的连接池中的某一连接与所述语音识别请求地址绑定。
非易失性计算机可读存储介质可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据语音识别请求处理装置的使用所创建的数据等。此外,非易失性计算机可读存储介质可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,非易失性计算机可读存储介质可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至语音识别请求处理装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本发明实施例还提供一种计算机程序产品,计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被计算机执行时,使计算机执行上述任一项语音识别请求处理方法。
图5是本发明实施例提供的电子设备的结构示意图,如图5所示,该设备包括:一个或多个处理器510以及存储器520,图5中以一个处理器510为例。语音识别请求处理方法的设备还可以包括:输入装置530和输出装置540。处理器510、存储器520、输入装置530和输出装置540可以通过总线或者其他方式连接,图5中以通过总线连接为例。存储器520为上述的非易失性计算机可读存储介质。处理器510通过运行存储在存储器520中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例语音识别请求处理方法。输入装置530可接收输入的数字或字符信息,以及产生与语音识别请求处理装置的用户设置以及功能控制有关的键信号输入。输出装置540可包括显示屏等显示设备。
上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。
作为一种实施方式,上述电子设备应用于语音识别请求处理装置中,包括:
至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够:
接收语音识别请求;
解析所述语音识别请求以获得所述语音识别请求中包含的业务类型参数和请求地址,创建与所述语音识别请求唯一对应的通道;
确定已有连接池中是否存在与所述请求地址绑定的连接池;
若存在与所述请求地址绑定的连接池,将所述唯一对应的通道与从所述绑定的连接池中选择的某一连接建立连接;
若不存在,基于所述语音识别请求的业务类型创建一个与所述业务类型对应的新的连接池,将所述新的连接池中的某一连接与所述语音识别请求地址绑定。
本申请实施例的电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据交互功能的电子装置。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种语音识别请求处理方法,包括:
接收语音识别请求;
解析所述语音识别请求以获得所述语音识别请求中包含的业务类型参数和请求地址,创建与所述语音识别请求唯一对应的通道;
确定已有连接池中是否存在与所述请求地址绑定的连接池;
若存在与所述请求地址绑定的连接池,将所述唯一对应的通道与从所述绑定的连接池中选择的某一连接建立连接,所述连接为websocket连接以不断向客户端推送返回;
若不存在,基于所述语音识别请求的业务类型创建一个与所述业务类型对应的新的连接池,将所述新的连接池中的某一连接与所述语音识别请求地址绑定;
监听各连接池的配置属性是否满足当前需求;
若不满足,动态调整所述各连接池的配置属性以使所述各连接池的配置属性满足所述当前需求,其中,所述配置属性包括连接池容量、识别音频流大小和等待时间限制,不同的所述业务类型参数具有不同的配置属性。
2.根据权利要求1所述的方法,其中,所述若存在与所述请求地址绑定的连接池,将所述唯一对应的通道与从所述绑定的连接池中选择的某一连接建立连接包括:
若存在与所述请求地址绑定的连接池,判断所述绑定的连接池中是否存在空闲的连接;
若所述绑定的连接池中存在空闲的连接,将所述唯一对应的通道与所述空闲的连接绑定;
若所述绑定的连接池中不存在空闲的连接,等待直至所述连接池中存在空闲的连接时,将所述唯一对应的通道与所述空闲的连接绑定。
3.根据权利要求1所述的方法,其中,所述方法还包括:
接收从所述请求地址发送与所述语音识别请求关联的语音识别流;
经由语音识别系统对所述语音识别流进行语音识别,将获取所述语音识别系统的识别结果并异步反馈至所述请求地址;
监听是否反馈成功,若反馈失败,重新反馈直至反馈成功。
4.根据权利要求3所述的方法,还包括:
若检测到所述语音识别流的结束符,通过发送心跳包的方式维护所述连接,直至所述连接的空闲时间超时时关闭所述连接。
5.一种语音识别请求处理装置,包括:
接收模块,配置为接收语音识别请求;
解析创建模块,配置为解析所述语音识别请求以获得所述语音识别请求中包含的业务类型参数和请求地址,创建与所述语音识别请求唯一对应的通道;
确定模块,配置为确定已有连接池中是否存在与所述请求地址绑定的连接池;
连接绑定模块,配置为若存在与所述请求地址绑定的连接池,将所述唯一对应的通道与从所述绑定的连接池中选择的某一连接建立连接,所述连接为websocket连接以不断向客户端推送返回;
新建绑定模块,配置为若不存在,基于所述语音识别请求的业务类型创建一个与所述业务类型对应的新的连接池,将所述新的连接池中的某一连接与所述语音识别请求地址绑定;
监听各连接池的配置属性是否满足当前需求;
若不满足,动态调整所述各连接池的配置属性以使所述各连接池的配置属性满足所述当前需求,其中,所述配置属性包括连接池容量、识别音频流大小和等待时间限制,不同的所述业务类型参数具有不同的配置属性。
6.根据权利要求5所述的装置,其中,所述连接绑定模块进一步配置为:
若存在与所述请求地址绑定的连接池,判断所述绑定的连接池中是否存在空闲的连接;
若所述绑定的连接池中存在空闲的连接,将所述唯一对应的通道与所述空闲的连接绑定;
若所述绑定的连接池中不存在空闲的连接,等待直至所述连接池中存在空闲的连接时,将所述唯一对应的通道与所述空闲的连接绑定。
7.一种非易失性计算机可读存储介质,其中,所述非易失性计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行权利要求1-4中任一项所述的方法。
8.一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至4任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010294899.8A CN111477229B (zh) | 2020-04-15 | 2020-04-15 | 语音识别请求处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010294899.8A CN111477229B (zh) | 2020-04-15 | 2020-04-15 | 语音识别请求处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111477229A CN111477229A (zh) | 2020-07-31 |
CN111477229B true CN111477229B (zh) | 2023-02-17 |
Family
ID=71753302
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010294899.8A Active CN111477229B (zh) | 2020-04-15 | 2020-04-15 | 语音识别请求处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111477229B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115132189A (zh) * | 2022-06-10 | 2022-09-30 | 中国第一汽车股份有限公司 | 一种基于自适应控制策略的长连接通信连接池管理方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101990256A (zh) * | 2010-08-27 | 2011-03-23 | 中兴通讯股份有限公司 | 长连接管理装置及长连接通讯的链路资源管理方法 |
CN105681608A (zh) * | 2014-11-17 | 2016-06-15 | 中国移动通信集团江苏有限公司 | 一种动态分配管理连接代理的方法及装置 |
-
2020
- 2020-04-15 CN CN202010294899.8A patent/CN111477229B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101990256A (zh) * | 2010-08-27 | 2011-03-23 | 中兴通讯股份有限公司 | 长连接管理装置及长连接通讯的链路资源管理方法 |
CN105681608A (zh) * | 2014-11-17 | 2016-06-15 | 中国移动通信集团江苏有限公司 | 一种动态分配管理连接代理的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111477229A (zh) | 2020-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7112919B2 (ja) | スマート装置のタスク処理方法および装置 | |
CN108270732B (zh) | 一种流媒体处理方法及系统 | |
US11080090B2 (en) | Method and system for scalable job processing | |
US20170163479A1 (en) | Method, Device and System of Renewing Terminal Configuration In a Memcached System | |
US20170163478A1 (en) | Method,electronic device and system for updating client configuration in key-value pair database | |
CN110765744A (zh) | 多人协同文档编辑方法及系统 | |
CN108055304B (zh) | 远程数据的同步方法、装置、服务器、设备和存储介质 | |
WO2017185615A1 (zh) | 一种业务处理设备的业务状态确定方法及调度设备 | |
CN113259415B (zh) | 一种网络报文处理方法、装置及网络服务器 | |
CN111541555A (zh) | 群聊优化方法及相关产品 | |
CN104092714A (zh) | 流媒体文件的播放方法及装置 | |
CN116319790A (zh) | 全真场景的渲染方法、装置、设备和存储介质 | |
CN113300854A (zh) | 一种边缘节点能力扩展方法、系统及扩展盒子 | |
CN110868323B (zh) | 一种带宽控制方法、装置、设备及介质 | |
CN112104679B (zh) | 处理超文本传输协议请求的方法、装置、设备和介质 | |
CN111477229B (zh) | 语音识别请求处理方法和装置 | |
CN106686635B (zh) | 基于无线接入点的控制和配置协议的数据传输方法和装置 | |
CN111258902B (zh) | 基于SockJS服务器的性能测试方法和性能测试系统 | |
CN111866544B (zh) | 数据处理方法、装置、设备及计算机可读存储介质 | |
CN111277599B (zh) | 一种远程调用处理方法及装置 | |
CN110753043B (zh) | 一种通信方法、装置、服务器及介质 | |
CN110266814B (zh) | 传输方法及传输装置 | |
CN114416275A (zh) | 一种实现多个管理客户端同步虚拟机状态的方法及系统 | |
CN107506491B (zh) | 一种分布式文件系统的osd数据分发方法及装置 | |
CN108900602B (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 | ||
CB02 | Change of applicant information |
Address after: 215123 building 14, Tengfei Innovation Park, 388 Xinping street, Suzhou Industrial Park, Suzhou City, Jiangsu Province Applicant after: Sipic Technology Co.,Ltd. Address before: 215123 building 14, Tengfei Innovation Park, 388 Xinping street, Suzhou Industrial Park, Suzhou City, Jiangsu Province Applicant before: AI SPEECH Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |