liangweidonggood / ocrservice

:dolphin:一个OCR服务的完整技术栈 Tesseract/Gin/RabbitMQ/Nginx/Docker

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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

About

:dolphin:一个OCR服务的完整技术栈 Tesseract/Gin/RabbitMQ/Nginx/Docker


Languages

Language:Go 50.0%Language:HTML 29.9%Language:JavaScript 14.5%Language:Shell 2.8%Language:CSS 2.8%