java - 需要帮助来分离文件处理服务器

标签 java linux amazon-ec2 ocr

我开发了具有OCR 功能的文档管理系统(DMS)。但是,它需要太多时间来处理,而且 CPU 使用率很高

我现在的流程是同步的,如下:

  1. 用户上传他的文件
  2. OCR 流程
  3. 在数据库中存储文档信息

考虑到实时生产负载,我想在专用文件处理独立服务器上将上述第二步异步化。

我的问题是,

  1. 这是正确的做法吗?
  2. 如何将该文件发送/检索到另一台服务器进行处理?我还发现可以使用消息队列,但我无法在其中添加整个文件。
  3. 无论如何,我们可以确认流程完成吗?

最佳答案

为了解决这个问题,我已经在单独的文件处理服务器上成功地分离了 OCR 进程,这确实帮助我解决了高 CPU 使用率问题,使用 FIFO 方法。

按照以下步骤:

  1. 用户上传文件
  2. OCR 状态待处理
  3. 单独的服务器进程文件,根据 FIFO 方法一次挂起。
  4. 更新数据库中的 OCR 处理状态。

以后可以根据需要和服务器的负载增加处理服务器。

关于java - 需要帮助来分离文件处理服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49753847/

相关文章:

linux - 如何替换占位符的值

php - 使用 PHP 删除 Linux 服务器上文件夹中的所有文件

git - 将 GitHub 分支自动部署到 AWS Elastic Beanstalk

java - 从 SD 卡中删除文件夹

java - 合并两个 Guava 多重贴图

java - 使用 double 时替代 if else 语句

java - 在 EAR 上使用 jsf 作为模板引擎

linux - git-svn 或 git-flow 命令是如何在中间没有破折号的情况下执行的

amazon-web-services - 在 AWS Elastic Beanstalk 上运行 Docker 容器 - 502 Bad Gateway nginx/1.6.2

ubuntu - Amazon AWS Ubuntu Server 需要新用户登录