文档 OCR 识别优化为异步思路逻辑

文档 OCR 识别优化

同步处理(原逻辑)

  • 当前系统识别文档为同步处理,已调整过 python 服务部分参数,但 一份40M左右文档识别仍需要几十秒
    • 文档转为图片集合
    • for 循环中一直调用 ocr 识别

异步处理

  • nginx 增加 requestId header 参数
  • 后端获取到 requestId 参数,保存 threadLocal,键值数据为对应文档 id,requestId 需要在消息体中一直传递
  • 后端获取请求数据(生产者),将文档转为图片集合,并标识页码索引(属于文档第几页),存放 mq 队列,python多实例 服务(消费者)绑定队列,消费图片信息,OCR 识别以后发送 mq 至队列
  • 后端(消费者)接收 python 识别完成的消息进行后续处理
    • 获取 requestId 对应的文档 id 绑定文档
    • 拼接识别数据(requestId + 当前 ocr 识别文档页码)
    • 疑问点: 不知道接收到的识别数据属于当前文档什么部分,无法正确拼接数据,只能通过当前 ocr 识别的文档页码来处理
    • 具体实现逻辑待编码
相关推荐
南境十里·墨染春水2 分钟前
线程池学习(二)线程池理解
java·jvm·学习
ZGi.ai4 分钟前
私有化大模型接入企业系统:SSO+权限+API网关完整方案
java·开发语言·大模型·私有化部署·sso·企业架构
Han_han9195 分钟前
集合进阶(Map集合):
java
吴声子夜歌7 分钟前
Java——文件和目录操作
java·文件·目录
吴声子夜歌11 分钟前
Java——随机
java·random·随机
一念春风12 分钟前
记事本(C#)
开发语言·c#
aaaak_14 分钟前
PDD 直播间 评论 , wss hex Protobuf 解析流程分析学习
java·前端·学习
小雅痞18 分钟前
[Java][Leetcode simple] 205. 同构字符串
java·算法·leetcode
fox_lht20 分钟前
第十二章 泛型、接口和生命周期
开发语言·后端·rust
jayson.h22 分钟前
正则表达式:从文件名提取器件编号
开发语言·python·正则表达式