# AstroResearch Architecture / 架构设计 AstroResearch 是一个集成了天文学文献检索、多通道下载(含防爬绕过与手动上传)、下载错误诊断、结构化解析、中英学术对比翻译、引文星系图谱以及馆藏健康度诊断的天文科研辅助系统。 ## 1. 整体架构 (Overall Architecture) AstroResearch 采用 **C/S (Client-Server)** 架构,由前端 React 单页应用和后端 Axum HTTP 服务构成,核心流程及层级如下: ```mermaid graph TD subgraph Frontend ["React 前端 (Port 5173 / 8000)"] UI[仪表盘 UI / ReaderPanel] Canvas[引文 Canvas 拓扑图] API_Client[Axum API 客户端] CustomSelect[CustomSelect 可复用组件] end subgraph Backend ["Rust Axum 后端 (Port 8000)"] Router[Axum 路由与中间件] subgraph API ["API 层 (模块化)"] Helpers[helpers.rs 格式转换与数据库工具] Papers[papers.rs 文献检索/下载/上传/解析/翻译/引文/导出] Notes[notes.rs 笔记 CRUD] Sync[sync.rs 批量同步控制] end subgraph Services ["服务层"] Batch[batch/ 批量同步引擎] BatchMeta[batch/meta.rs 元数据采集] BatchAsset[batch/asset.rs 资源处理] Parser[parser.rs HTML/PDF 解析] Downloader[download.rs 多通道下载器] Translator[translation.rs LLM 翻译器] Logging[logging.rs 日志系统] end DB[("SQLite / astro_research.db")] end subgraph External [外部第三方服务] ADS[NASA ADS API] arXiv[arXiv Atom XML API] MinerU[MinerU PDF 解析服务] QiniuCDN[七牛云对象存储 CDN] LLM[LLM API] end UI -->|用户操作| API_Client API_Client -->|RESTful APIs| Router Router --> API Papers -->|查询/保存元数据| DB Papers -->|文献下载| Downloader Papers -->|文件上传| Papers Papers -->|正文解析| Parser Papers -->|学术翻译| Translator Sync -->|批量操作| Batch BatchMeta -->|元数据同步| ADS BatchMeta -->|元数据同步| arXiv BatchAsset -->|批量文件下载| Downloader BatchAsset -->|批量正文解析| Parser BatchAsset -->|批量翻译| Translator Batch -->|写库记录| DB Downloader -->|代理请求| ADS Downloader -->|直连或 ar5iv| arXiv Parser -->|图文降级解析| MinerU Parser -->|托管插图| QiniuCDN Translator -->|天文术语翻译| LLM Canvas -->|引文网络请求| Papers ``` ---