当前位置: 首页 >  技术分享 >  ASR项目实战-任务队列在文件转写特性中的应用

ASR项目实战-任务队列在文件转写特性中的应用

导读:转写时长超出60秒的语音文件,业界的竞品通常会使用创建异步转写任务的方式来提供支持。.一个简单、直接的实现方案,即:.网关服务接收到来自客户的转写请求时,将任务信息持久化至任务队列中。.由算法服务的实例从任务队列中提取任务,并执行转写操作。.待执行完毕之后,将转写结果保存至DB中

转写时长超出60秒的语音文件,业界的竞品通常会使用创建异步转写任务的方式来提供支持。
一个简单、直接的实现方案,即:

  • 网关服务接收到来自客户的转写请求时,将任务信息持久化至任务队列中。
  • 由算法服务的实例从任务队列中提取任务,并执行转写操作。
  • 待执行完毕之后,将转写结果保存至DB中,供调用方查询。

本文主要针对介绍任务队列的要求和选型。

在语音识别的文件转写的场景下,对于任务队列的常规诉求:

  1. 允许多个生产服务向队列中增加任务。
  2. 允许多个消费服务从队列中提取任务。
  3. 任务队列自身具备可靠性,避免自身成为影响整体系统可靠性的单点。
  4. 任务队列的读、写操作,效率满足业务要求,避免成为影响整体系统效率的单点。
  5. 单个任务,仅支持由一个消费服务提取和处理。
  6. 消费方在处理某指定的任务时,假如超时或者失败,则要求将任务重新放回到队列中,由其它消费服务的实例完成任务的处理。
  7. 消费方的实例异常重启后,该实例上当前正在处理的任务,需要重新被抓取至原实例或者新实例上,继续处理。

对于5、6,一般可以理解为任务的事务性。

关于实现任务队列的可选方案,一般有如下几种:

  • Redis
  • Kafka
  • DB(比如MySQL)

一般而言,Kafka、Redis自身可以满足上述要求中的1、2、3、4,实现并不困难,但5、6,则存在一定的困难。
而基于DB的方案,可以很好的满足1、2、5、6,但在提供3、4时存在一定的困难。此外,当消费方的实例的数量增加时,由于需要采用轮询的方式来提取任务,可能导致DB的CPU占用率有所提升。当任务的并发度提升时,容易出现死锁的现象,或者提升DB处理数据行锁的开销。

语音识别业务中文件转写请求的特点:

  • 当前的用户调用总量相对比较低。
  • 同一时间,来自客户的请求的并发度比较低。
  • 用户对于时延的敏感度相对比较低。
  • 用户对转写任务的成功率有比较高的诉求。

综合考虑项目组当前的人力情况、技术储备情况、交付进度的要求,选择了基于DB来实现任务队列的方案。

在DB中新建任务队列表,包含如下字段:

  • 任务ID,唯一标识。
  • 创建时间,用于后续计算任务端到端转写时间。
  • 任务结束时间,用于后续计算任务端到端转写时间。
  • 任务状态,当前任务处于排队中、处理中、处理结束、失败。对于失败的任务,假如重试次数低于门限值,则需要重试。
  • 锁定时间,用于确定任务是否超时,超时的任务需要重试。超时时间的定义,需要综合文件转写的实时比和语音文件自身的时长,给出恰当的定义,避免失败后等待过长的时间才能触发重试。
  • 当前处理任务的实例的标识,用于确定任务当前由哪个实例在转写。当算法服务的实例重启时,可以加载本实例相关的任务,执行重试操作。
  • 重试次数,系统需要提供自动重试的能力,可以规避某特定实例自身的问题导致的失败的现象,降低运维人员主动介入处理时的工作量。但不能无限制重试,需要定义重试的次数。

参考资料

  • 分布式定时任务调度框架选型
  • 浅谈分布式任务调度框架
  • 使用 MySQL 实现任务队列
  • 这些优秀的国产分布式任务调度系统,你用过几个?
  • Elastic-job 介绍与使用
  • elastic-job的原理简介和使用
  • elasticjob
内容
  • 为什么使用消息队列?我这样回答,面试官直说讲得很清楚
    为什么使用消息队列?我这样回答,
    2023-12-01
    为什么要使用消息队列,六个字总结:解耦、异步、消峰.1)解耦.传统模式下系统间的耦合性太强。怎么说呢,举个例子:系统 A
  • 可爱儿童内衣套装,优质棉质,柔软透气,呵护宝宝肌肤
    可爱儿童内衣套装,优质棉质,柔软
    2024-01-05
    可爱儿童内衣套装,优质棉质,柔软透气,呵护宝宝肌肤.宝宝的皮肤是非常娇嫩的,所以选择合适的内衣套装对于宝宝的健康和舒适至
  • 时尚潮流运动鞋
    时尚潮流运动鞋
    2024-01-15
    时尚潮流运动鞋.时尚潮流运动鞋一直是年轻人喜爱的时尚单品,它不仅舒适耐穿,更是一种个性的象征。随着时尚潮流不断更新,运动
  • 修身弹力牛仔裤
    修身弹力牛仔裤
    2023-12-26
    修身弹力牛仔裤:展现你的魅力.一、时尚的必备单品.修身弹力牛仔裤一直都是时尚界的必备单品,它不仅可以展现出个人的魅力,还
  • 休闲简约短袖衬衫
    休闲简约短袖衬衫
    2023-12-21
    休闲简约短袖衬衫.现代人生活节奏快,休闲简约的穿着成为时尚潮流。短袖衬衫作为经典的休闲单品,一直备受时尚人士的青睐。它舒
  • 休闲宽松T恤衫,释放自在舒适气息
    休闲宽松T恤衫,释放自在舒适气息
    2023-12-26
    休闲宽松T恤衫,释放自在舒适气息.在这个喧嚣的都市中,人们的生活节奏变得越来越快,压力也越来越大。因此,人们更加注重舒适
  • 潮流风衣大衣,彰显都市时尚风采
    潮流风衣大衣,彰显都市时尚风采
    2023-12-16
    潮流风衣大衣,彰显都市时尚风采.潮流风衣大衣一直是时尚界备受追捧的单品之一。它既能为我们遮风挡雨,又能为我们穿出时尚感,
  • 时尚修身连衣裙,展现优雅女性魅力
    时尚修身连衣裙,展现优雅女性魅力
    2023-12-06
    时尚修身连衣裙,展现优雅女性魅力.时尚修身连衣裙一直是女性衣橱里的必备单品,不仅款式多样,而且能够展现出女性的优雅魅力。
  • 保暖舒适羊毛大衣
    保暖舒适羊毛大衣
    2024-01-05
    保暖舒适羊毛大衣.冬季来临,寒冷的天气让人们更加注重保暖。在这个时候,一件保暖舒适的羊毛大衣成为了许多人的首选。羊毛大衣
  • 萌娃配饰套装,包包、帽子、围巾等,增添宝宝的时尚气息
    萌娃配饰套装,包包、帽子、围巾等
    2024-01-20
    萌娃配饰套装,为宝宝增添时尚气息.宝宝是家庭的小太阳,****们都希望给他们最好的一切。随着时尚的发展,宝宝的时尚潮流也
  • 轻盈雪纺衬衫,打造清新淑女形象
    轻盈雪纺衬衫,打造清新淑女形象
    2023-12-31
    轻盈雪纺衬衫,打造清新淑女形象.雪纺材质的衬衫一直以来都是清新淑女形象的代表,它轻盈飘逸的质地,柔软透气的触感,让人仿佛