所有测试采用Docker部署,避免环境差异影响结果,需提前安装Docker和Docker Compose。以下为CentOS7系统的直接安装命令(其他系统可调整对应包管理命令):
``` 卸载旧版本Docker sudo yum remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine 安装Docker依赖源 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo 安装Docker sudo yum install -y docker-ce docker-ce-cli containerd.io sudo systemctl start docker && sudo systemctl enable docker 安装Docker Compose sudo curl -L "https://github.com/docker/compose/releases/download/v2.24.6/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose ```验证安装:执行docker --version、docker-compose --version,显示版本号即安装完成。
专门针对文档归档优化,自动完成OCR和索引,适合中小型团队。部署命令:
``` mkdir -p ~/paperless && cd ~/paperless wget https://raw.githubusercontent.com/paperless-ngx/paperless-ngx/main/docker-compose.mariadb.yml docker compose up -d ```部署验证:访问http://服务器IP:8000,默认账号:admin,密码:adminadmin,登录后等待初始索引完成即可使用。
支持元数据管理、权限控制,适合中大型团队。部署命令:
``` mkdir -p ~/openkm && cd ~/openkm wget https://www.openkm.com/starter/download/docker-compose/docker-compose.yml docker compose up -d ```部署验证:访问http://服务器IP:8080/OpenKM,默认账号:okmAdmin,密码:admin,首次登录需修改密码。
兼具文档编辑和归档功能,适合需协作的团队。部署命令:
``` mkdir -p ~/onlyoffice && cd ~/onlyoffice wget https://raw.githubusercontent.com/ONLYOFFICE/DocumentServer/master/docker-compose.yml docker compose up -d ```
部署验证:访问http://服务器IP:80,首次登录需查看终端初始密码:执行docker logs onlyoffice-document-server | grep "First login password",登录后可重置密码。
统一测试环境:2核4G云服务器、100M内网带宽、100份同配置PDF文档(每页500字共100页),所有测试重复10次取平均值。
统计从上传文档到系统完成OCR、全文索引的总时间。以Paperless为例,批量上传脚本(需提前准备test_docs目录存放100份PDF):
``` 批量上传脚本(save as upload_paperless.sh) !/bin/bash ADMIN="admin:adminadmin" SERVER="http://服务器IP:8000" for file in ~/test_docs/.pdf; do curl -u $ADMIN -F "file=@$file" $SERVER/api/documents/post_document/ done 执行统计 time bash upload_paperless.sh ```OpenKM和OnlyOffice分别用对应API替换上传地址和凭证即可。
在每个系统搜索关键词“档案管理”,记录从输入到返回全部结果的时间。注意:需等系统任务队列全部完成(Paperless在网页查看任务,OpenKM和OnlyOffice在后台查看),避免索引未完成导致误差。
用Apache Bench模拟10个用户同时上传10份文档,命令(以Paperless为例):
``` ab -n 10 -c 10 -u ~/test_docs/1.pdf -A admin:adminadmin http://服务器IP:8000/api/documents/post_document/ ```核心指标:平均请求响应时间。
补充说明:本次测试为单节点轻量场景,若需企业级大规模部署,OpenKM支持集群扩展,Paperless可配置SSD优化索引,仅作对比参考。
docker system prune -a --volumes清理旧镜像后重新部署