📷图床系统详细架构图

╔══════════════════════════════════════════╗
                用户浏览器(前端)           
             Vue3 + PrimeVue              
╚══════════════════════════════════════════╝
               
               
╔══════════════════════════════════════════╗
                  Nginx                   
 - 反向代理                                 
 - 防盗链(Referer校验URL签名验证)         
 - HTTPS处理                               
╚══════════════════════════════════════════╝
               
               
╔══════════════════════════════════════════╗
          PHP 后端 (ThinkPHP8 框架)        
 - API接口层                               
 - 认证(OAuth2 + JWT签发)                 
 - 上传处理(把上传任务发送到Kafka)          
 - 图片查看列表管理                      
 - 权限控制(用户组权限)                    
 - 动态生成签名防盗链地址                    
╚══════════════════════════════════════════╝
               
       ┌───────┴────────────────────────────┐
                                            
                                            
╔════════════════════╗        ╔════════════════════════════════╗
        Redis                           Kafka集群             
 - 缓存Session/Token          - 异步任务(图片处理流程)         
╚════════════════════╝        ╚════════════════════════════════╝
                                        
                                        
╔══════════════════════════════════════════════════════════════════════╗
                        Kafka 消费者 Worker(异步图片处理)              
 - 图片压缩(支持多种压缩策略)                                           
 - 图片格式转换(WebP / AVIF)                                          
 - 动态水印添加                                                        
 - 图片审核(调用审核API,如阿里云/腾讯云审核API)                         
 - 存储到对象存储(OSS/S3/本地存储)                                     
 - 删除临时文件                                                        
╚══════════════════════════════════════════════════════════════════════╝
                                        
            ┌───────────────────────────┼────────────────────────────┐
                                                                   
                                                                   
╔════════════════════╗    ╔════════════════════╗     ╔═════════════════════════════════════╗
 对象存储 OSS/S3/本地      PostgreSQL数据库          第三方审核API接口 (可配置多个)         
 - 存储图片文件             - 用户图片相册表       - 腾讯云 / 阿里云内容安全API等         
 - 多存储策略选择           - 压缩策略存储策略表      - 可灵活切换设置多个审核通道          
╚════════════════════╝    ╚════════════════════╝     ╚═════════════════════════════════════╝

📷系统详细模块划分图

╔════════════════════════════════════════════════════════════════════════════════╗
                               用户浏览器(Vue3 + PrimeVue)                       
 - 登录/注册                                                                      
 - 相册浏览                                                                       
 - 图片上传                                                                       
 - 图片广场                                                                       
 - 用户中心(个人资料设置空间查看)                                             
 - 后台管理入口(管理员/运营专用)                                                   
╚════════════════════════════════════════════════════════════════════════════════╝
                                              
                                              
╔════════════════════════════════════════════════════════════════════════════════╗
                               Nginx(网关层)                                    
 - HTTPS(SSL证书)                                                               
 - 反向代理到 PHP                                                                 
 - 防盗链 Referer 校验                                                             
 - URL签名校验(动态防盗链链接生成)                                                
 - 限流拦截IP白名单黑名单                                                       
╚════════════════════════════════════════════════════════════════════════════════╝
                                              
                                              
╔════════════════════════════════════════════════════════════════════════════════╗
                                ThinkPHP 8 应用(API层)                          
   认证模块                                                                   
   - OAuth2 授权流程                                                              
   - JWT签发与验证                                                                
   - Token刷新机制                                                                
                                                                                  
   用户模块                                                                   
   - 用户注册/登录                                                                
   - 用户信息修改                                                                 
   - 空间使用情况统计                                                             
   - 用户组权限绑定                                                               
                                                                                  
   用户组管理模块                                                             
   - 用户组权限配置                                                               
   - 上传限制审核要求压缩策略限制                                              
                                                                                  
   相册模块                                                                   
   - 多级相册目录                                                                  
   - 图片移动/重命名/删除                                                         
                                                                                  
   上传模块                                                                   
   - 上传文件初步校验(大小格式)                                                
   - 暂存临时目录                                                                 
   - 投递Kafka消息(图片处理)                                                     
                                                                                  
   图片管理模块                                                               
   - 图片列表缩略图展示                                                          
   - 图片压缩记录审核状态                                                        
   - 水印动态生成配置                                                              
                                                                                  
   策略配置模块                                                               
   - 压缩策略定义                                                                  
   - 存储策略切换                                                                  
   - 防盗链策略设置                                                                
╚════════════════════════════════════════════════════════════════════════════════╝
                                              
                ┌────────────────────────────┼────────────────────────────┐
                                                                        
╔══════════════════════════╗   ╔══════════════════════════╗  ╔════════════════════════════════╗
          Redis                         Kafka                       Prometheus+Grafana    
 - Token存储                   - 图片处理任务异步推送       - 性能监控+报警                
 - 用户缓存频率控制           - 审核回调任务推送          - 资源使用率监控               
 - 接口防刷                    - 大图转码任务推送          - 数据库性能监控               
╚══════════════════════════╝   ╚══════════════════════════╝  ╚════════════════════════════════╝
                                              
                                              
╔════════════════════════════════════════════════════════════════════════════════╗
                              Kafka消费者Worker (异步后台)                         
   图片压缩子模块                                                              
   - 按压缩策略压缩JPEG/PNG                                                        
   - 输出WebP/AVIF格式                                                             
                                                                                  
   水印添加子模块                                                              
   - 动态文字水印                                                                  
   - 图片水印                                                                      
                                                                                  
   审核处理子模块                                                              
   - 调用内容审核API(腾讯阿里华为等)                                           
   - 根据审核结果标记图片                                                          
                                                                                  
   存储处理子模块                                                              
   - 自动存到OSS/S3                                                               
   - 或本地磁盘存储                                                                
╚════════════════════════════════════════════════════════════════════════════════╝
                                              
                 ┌────────────────────────────┬────────────────────────────┐
                                                                         
╔══════════════════════════╗   ╔══════════════════════════╗   ╔══════════════════════════╗
        OSS/S3 存储                  PostgreSQL 数据库            审核API服务 (可换)    
 - 文件存储                    - 用户/图片/审核表           - 腾讯/阿里/华为/自定义审核 
 - CDN加速接入(可选)          - 压缩策略/存储策略表        - API密钥配置             
╚══════════════════════════╝   ╚══════════════════════════╝   ╚══════════════════════════╝