🐬一个OCR服务的完整技术栈 Tesseract/Gin/RabbitMQ/Nginx/Docker
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
backend
frontend
nginx
rpc
tests
worker
Dockerfile
README.md
docker-compose.yml
ocrservice-ui.jpg

README.md

OCR Service

使用开源项目搭了一个OCR服务的完整技术栈

  • frontend 应用: UI完整拷贝自otiai10/ocrserver
  • 负载均衡器: Nginx
  • backend 业务层: Gin
  • worker 计算层: Tesseract
  • MQ 消息队列: RabbitMQ

Architecture

                      - - - -    - - - -
                      | APP |    | APP |
                      - - - -    - - - -
                         ^          ^
                         |          |
                         |          |
                         v          v
                     - - - - - - - - - -
                     |  Loadbalancer   |
                     - - - - - - - - - -
                       ^      ^       ^
                     /        |         \
                   /          |           \
                 /            |             \
                v             v              v
          - - - - - -     - - - - - -      - - - - - -
          | Backend |     | Backend |      | Backend |
          - - - - - -     - - - - - -      - - - - - -
              ^              |   ^               ^ 
              |              |   |               |
              v              v   |               v
          - - - - - - - - - - - - - - - - - - - - - - - -
          |                 | | | |                     |
          |     RabbitMQ    |q| |q|        RPC          |
          |                 | | | |                     |
          - - - - - - - - - - - - - - - - - - - - - - - -
              ^              |   ^            ^        ^ 
              |              |   |            |         \
              v              v   |            v          \
        - - - - - -      - - - - - -    - - - - - -    - - - - - -
        | Worker  |      | Worker  |    | Worker  |    | Worker  |
        - - - - - -      - - - - - -    - - - - - -    - - - - - -

Play with docker

build image

hub clone onestraw/ocrservice
cd ocrservice
docker build -t onestraw/ocrservice .

Play

docker-compose up -d
# view in browser: 127.0.0.1:10001
cd tests/ && ./runtest.sh
# ...
docker-compose logs
docker-compose down

ocrservice-ui

Todo

  • 支持PDF
  • 添加用户认证
  • 持久化存储
  • 高可用

Reference