Skip to content

PaddleSpeech Server Architecture

Hui Zhang edited this page Jan 25, 2022 · 12 revisions

PaddleSpeech Server 服务架构设计

1. 概括

PaddleSpeech Serving是基于python + fastapi 的语音算法模型的C/S类型后端服务,旨在统一paddle speech下的各语音算子来对外提供后端服务。提供简单易懂的服务架构体系,实现高可用、高性能、高可靠的服务,方便使用者快速部署相关的算法能力引擎。

2. 架构

2.1 设计思想

  • C/S 的架构

  • 工厂模式: 在服务设计中,使用工厂模式来创建对象,使得 PaddleSpeech Serving成为一座引擎的工厂。

  • 单例模式思想: 考虑服务运行时引擎的实例数只有一个(单例模式),在初始化服务完成。之后request不断请求进来后调用API,API中的引擎单例只执行run函数来处理结果,run函数中封装三个步骤: preprocess、infer、 postprocess。

  • 复用cli模块 继承Executor,然后重载相关需要重构的方法以满足请求的base64 音频文件。

2.2 总体结构设计

2.3 类图设计