a329d4906b
- 方案文档: AVCC 体系建设、IPTV TCS 需求(0-req)/PRD(1-prd)/任务(2-task)/二三四期任务 - tcs-iptv: Go 后端(哈希SDK/MA码生成/可信数据空间mock/业务编排/HTTP API+HMAC鉴权) - web-console: React+AntD 监管大屏(角色工作台/全流程演示/监管片库) - 一剧一码+集级哈希, 集级下架/恢复, 全栈测试通过
46 KiB
46 KiB
AIGC-Hub 技术选型、实现与技术路线详图 — 绘制描述
用途:下午与技术专家深度交流,聚焦技术选型理由、混合语言分工、系统实现细节与技术演进路线
建议工具:Figma / draw.io / ProcessOn / PPT
画布方向:横版,左侧为技术分层架构,右侧为技术路线甘特图
建议尺寸:A1 横版 或 双屏16:9拼接
一、图的整体构图逻辑
采用 "左架构 · 中选型 · 右路线" 三栏式布局:
- 左栏(40%):技术分层架构图 — 从接入层到基础设施逐层展开,每层标注具体技术组件
- 中栏(25%):混合语言选型矩阵 — 按性能/场景/团队维度说明每种语言的分工定位
- 右栏(35%):技术路线甘特图 — 三期演进,每期标注技术里程碑与组件版本升级
二、左栏:技术分层架构详图
绘制方式:7 层水平堆叠,每层用不同色带区分
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ ⓪ 接入与流量层 ┃
┃━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┃
┃ ┃
┃ ┌─────────┐ ┌─────────────┐ ┌─────────┐ ┌────────────┐ ┃
┃ │ CDN │ │ WAF / DDoS │ │ DNS │ │ TLS 1.3 │ ┃
┃ │广电云CDN │ │ 防护 │ │ 解析 │ │ 证书管理 │ ┃
┃ └─────────┘ └─────────────┘ └─────────┘ └────────────┘ ┃
┃ ┃
┃ ┌───────────────────────────────────────────────────────┐ ┃
┃ │ API Gateway: Kong / Apache APISIX │ ┃
┃ │ · 流量控制 · JWT/HMAC鉴权 · 灰度发布 · 日志采集 │ ┃
┃ │ · 限流: Token Bucket (500-2000 QPS/平台) │ ┃
┃ └───────────────────────────────────────────────────────┘ ┃
┃ ┃
┃ ┌───────────────────────────────────────────────────────┐ ┃
┃ │ Nginx Ingress Controller (K8s L7) │ ┃
┃ │ · TLS终止 · 路由规则 · 3 replicas │ ┃
┃ └───────────────────────────────────────────────────────┘ ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ ① 前端与客户端层 ┃
┃━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┃
┃ ┃
┃ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┃
┃ │ 监管大屏 │ │ 运营后台 │ │ 创作者工作台 │ ┃
┃ │ React 18 │ │ React 18 │ │ React 18 │ ┃
┃ │ ECharts │ │ Ant Design 5│ │ Ant Design 5│ ┃
┃ │ WebSocket │ │ Zustand │ │ 大文件上传 │ ┃
┃ └──────────────┘ └──────────────┘ └──────────────┘ ┃
┃ ┃
┃ ┌──────────────┐ ┌──────────────┐ ┃
┃ │ 移动端(扫码) │ │ C2PA CLI │ ┃
┃ │ React Native │ │ Rust编译 │ ┃
┃ │ / 小程序 │ │ 跨平台二进制 │ ┃
┃ └──────────────┘ └──────────────┘ ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ ② 后端微服务层(混合语言架构 · 核心) ┃
┃━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┃
┃ ┃
┃ ┌─── Go 1.22+ (高并发 · 低延迟 · 网关级) ──────────────────┐ ┃
┃ │ │ ┃
┃ │ [MA编码网关] [赋码引擎] [清算引擎] │ ┃
┃ │ Gin/Echo Gin+GORM Gin+GORM │ ┃
┃ │ 万级QPS 编码规则计算 实时分账对账 │ ┃
┃ │ AVCC解析 码资源分配 数值精度计算 │ ┃
┃ │ │ ┃
┃ │ [区块链服务] │ ┃
┃ │ ChainMaker SDK / Fabric SDK │ ┃
┃ │ 国密SM2/SM3/SM4 · gRPC高性能交互 │ ┃
┃ └─────────────────────────────────────────────────────────┘ ┃
┃ ┃
┃ ┌─── Kotlin 2.0+ / Spring Boot 3.x (业务中台 · 企业级) ───┐ ┃
┃ │ │ ┃
┃ │ [工作台BFF服务] [审核编排服务] [平台接入管理] │ ┃
┃ │ Spring WebFlux Coroutines Spring Security │ ┃
┃ │ 协程非阻塞 任务状态机 OAuth2/RBAC │ ┃
┃ │ GraphQL聚合 审核流程编排 多租户隔离 │ ┃
┃ │ │ ┃
┃ │ [数据回传服务] [报表与对账服务] [通知与回调服务] │ ┃
┃ │ Kafka Consumer ClickHouse查询 WebHook/邮件/短信 │ ┃
┃ │ 批量数据校验 定时报表生成 重试与幂等保证 │ ┃
┃ │ │ ┃
┃ │ 选型理由: │ ┃
┃ │ · JVM生态成熟,企业级中间件(Spring全家桶)开箱即用 │ ┃
┃ │ · Coroutines 协程模型兼顾高并发与代码可读性 │ ┃
┃ │ · 空安全+DSL 减少运行时NPE,提升代码健壮性 │ ┃
┃ │ · 与Java互操作,可复用成熟的ChainMaker Java SDK │ ┃
┃ │ · 团队可从Java/Kotlin渐进迁移,降低招聘门槛 │ ┃
┃ └─────────────────────────────────────────────────────────┘ ┃
┃ ┃
┃ ┌─── Python 3.11+ (AI管道 · 业务编排 · 快速迭代) ─────────┐ ┃
┃ │ │ ┃
┃ │ [审核AI管道] [版权链交互层] [文档生成] │ ┃
┃ │ FastAPI FastAPI WeasyPrint │ ┃
┃ │ Triton Client Web3py ReportLab │ ┃
┃ │ 模型推理编排 合约调用封装 PDF证书 │ ┃
┃ │ │ ┃
┃ │ [审核任务调度] │ ┃
┃ │ Celery + Redis │ ┃
┃ │ 异步任务分发与结果聚合 │ ┃
┃ └─────────────────────────────────────────────────────────┘ ┃
┃ ┃
┃ ┌─── Rust (底层性能 · 媒体处理 · 安全关键) ───────────────┐ ┃
┃ │ │ ┃
┃ │ [C2PA SDK核心] [视频指纹提取] [编解码加速] │ ┃
┃ │ c2pa-rs FFmpeg绑定 感知哈希算法 │ ┃
┃ │ JUMBF嵌入/验证 大文件流处理 高性能无GC │ ┃
┃ │ │ ┃
┃ │ 提供绑定: PyO3(Python) / N-API(JS) / CGO(Go) │ ┃
┃ └─────────────────────────────────────────────────────────┘ ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ ③ AI 推理层 ┃
┃━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┃
┃ ┃
┃ ┌──────────────────────────────────────────────────────┐ ┃
┃ │ NVIDIA Triton Inference Server 2.x │ ┃
┃ │ · 动态批处理 · 多框架(PyTorch/ONNX) · GPU调度 │ ┃
┃ └──────────────────────────────────────────────────────┘ ┃
┃ ┃
┃ ┌───────┐ ┌───────┐ ┌───────┐ ┌───────┐ ┌────────────┐ ┃
┃ │画面合规│ │台词NLP│ │音频合规│ │AIGC真实│ │版权指纹向量│ ┃
┃ │Vision │ │NLP │ │Audio │ │Deep │ │Fingerprint│ ┃
┃ │A10/A100│ │A10 │ │A10 │ │Fake │ │CPU+Milvus │ ┃
┃ │PyTorch│ │Trans- │ │torch- │ │A100 │ │HNSW索引 │ ┃
┃ │OpenMM │ │formers│ │audio │ │PyTorch│ │COSINE相似 │ ┃
┃ └───────┘ └───────┘ └───────┘ └───────┘ └────────────┘ ┃
┃ ┃
┃ 模型版本管理: MLflow / DVC ┃
┃ A/B测试: 流量切分 + 灰度发布 ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ ④ 数据存储层 ┃
┃━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┃
┃ ┃
┃ ┌─────────────── 关系型 (OLTP) ──────────────────────────┐ ┃
┃ │ PostgreSQL 16 + Patroni + etcd │ ┃
┃ │ · 1主2从 · JSONB灵活schema · 等保审计日志 │ ┃
┃ │ · 核心表: avcc_records / review_reports / chain_records│ ┃
┃ │ · RPO<1s · RTO<30s │ ┃
┃ └────────────────────────────────────────────────────────┘ ┃
┃ ┃
┃ ┌──────┐ ┌──────────┐ ┌──────────┐ ┌───────┐ ┌─────────┐ ┃
┃ │Redis │ │ClickHouse│ │Elastic- │ │Milvus │ │ MinIO │ ┃
┃ │Cluster│ │ 24.x │ │search 8.x│ │/pgvec │ │对象存储 │ ┃
┃ │7.x │ │ │ │ │ │ │ │ │ ┃
┃ │3主3从 │ │3节点副本 │ │3节点 │ │HNSW │ │4节点纠删│ ┃
┃ │ │ │ │ │ │ │ │ │ │ ┃
┃ │缓存 │ │时序分析 │ │全文检索 │ │向量 │ │视频/水印│ ┃
┃ │限流 │ │播放统计 │ │审核报告 │ │指纹 │ │证书PDF │ ┃
┃ │分布式锁│ │运营报表 │ │日志 │ │版权比对│ │证据包 │ ┃
┃ └──────┘ └──────────┘ └──────────┘ └───────┘ └─────────┘ ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ ⑤ 消息与异步层 ┃
┃━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┃
┃ ┃
┃ ┌────────────────────────────────────────────────────────┐ ┃
┃ │ Apache Kafka 3.x (3 Broker) │ ┃
┃ │ Topics: │ ┃
┃ │ · topic.avcc.apply.created (6分区, 7天) │ ┃
┃ │ · topic.review.task.finished (12分区, 7天) │ ┃
┃ │ · topic.chain.tx.confirmed (6分区, 30天) │ ┃
┃ │ · topic.playback.event (24分区, 3天, 高吞吐) │ ┃
┃ │ · topic.system.dlq (3分区, 永久) │ ┃
┃ │ │ ┃
┃ │ 语义: 核心流At-Least-Once · 播放流At-Most-Once │ ┃
┃ │ 保序: Key=avcc_record_id → 同Partition │ ┃
┃ └────────────────────────────────────────────────────────┘ ┃
┃ ┃
┃ ┌──────────┐ ┌──────────────┐ ┌────────────────┐ ┃
┃ │Celery │ │Kafka Streams │ │APScheduler │ ┃
┃ │+ Redis │ │/ Flink │ │/ Airflow │ ┃
┃ │异步任务 │ │实时流处理 │ │定时调度 │ ┃
┃ │PDF/邮件 │ │异常检测 │ │清算/报表 │ ┃
┃ └──────────┘ └──────────────┘ └────────────────┘ ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ ⑥ 区块链层 ┃
┃━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┃
┃ ┃
┃ ┌────────────────────────────────────────────────────────┐ ┃
┃ │ 长安链 ChainMaker 2.x (首选) / Fabric 2.5+ │ ┃
┃ │ │ ┃
┃ │ 共识: TBFT/Raft · 国密SM2/SM3/SM4 · 5组织联盟 │ ┃
┃ │ │ ┃
┃ │ 智能合约(Go实现): │ ┃
┃ │ ┌────────────┐ ┌────────────┐ ┌────────────┐ │ ┃
┃ │ │AVCC_Copy- │ │AVCC_User- │ │AVCC_Settle-│ │ ┃
┃ │ │right │ │Rights │ │ment │ │ ┃
┃ │ │版权主链合约│ │用户权益合约│ │分账清算合约│ │ ┃
┃ │ └────────────┘ └────────────┘ └────────────┘ │ ┃
┃ │ │ ┃
┃ │ 链服务代理: chain-svc (Go) → gRPC → ChainMaker Nodes │ ┃
┃ │ 异步上链: Kafka → chain-svc → 区块监听 → 确认回调 │ ┃
┃ │ 密钥管理: HSM硬件安全模块(等保三级必要) │ ┃
┃ └────────────────────────────────────────────────────────┘ ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ ⑦ 基础设施与 DevOps 层 ┃
┃━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┃
┃ ┃
┃ ┌─── 容器编排 ───┐ ┌─── 可观测性 ───┐ ┌─── CI/CD ──────┐ ┃
┃ │ K8s 1.29+ │ │ Prometheus │ │ GitLab CI │ ┃
┃ │ Istio(可选) │ │ Grafana 10.x │ │ ArgoCD │ ┃
┃ │ Harbor 2.x │ │ Jaeger/OTel │ │ Harbor扫描 │ ┃
┃ │ Vault │ │ ELK / Loki │ │ Nexus制品库 │ ┃
┃ └───────────────┘ └───────────────┘ └────────────────┘ ┃
┃ ┃
┃ 安全域: DMZ → 应用区 → 数据区 → AI推理区 → 区块链区 → 监管区 ┃
┃ 网络策略: mTLS · NetworkPolicy · WAF · 等保三级全栈合规 ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
三、中栏:混合语言选型矩阵
绘制方式:横向对比表 + 雷达图
┌────────────────────────────────────────────────────────────────────┐
│ 混合语言选型决策矩阵 │
├─────────┬────────────┬─────────────┬──────────────┬───────────────┤
│ 维度 │ Go 1.22 │ Kotlin 2.0 │ Python 3.11 │ Rust │
├─────────┼────────────┼─────────────┼──────────────┼───────────────┤
│ 定位 │ 网关/计算 │ 业务中台 │ AI管道/编排 │ 底层/媒体 │
│ │ 密集型 │ 企业级服务 │ 快速迭代 │ 安全关键 │
├─────────┼────────────┼─────────────┼──────────────┼───────────────┤
│ 并发模型 │ Goroutine │ Coroutines │ asyncio │ async/await │
│ │ 百万级轻量 │ 结构化并发 │ + Celery │ 零成本抽象 │
├─────────┼────────────┼─────────────┼──────────────┼───────────────┤
│ 典型QPS │ 5万-10万 │ 1万-5万 │ 1千-5千 │ 10万+ │
│ (单实例) │ │ (WebFlux) │ (FastAPI) │ (裸性能) │
├─────────┼────────────┼─────────────┼──────────────┼───────────────┤
│ 生态优势 │ 云原生原生 │ Spring全家桶│ AI/ML生态 │ 安全/性能 │
│ │ K8s/Docker │ 企业中间件 │ PyTorch/HF │ WASM/嵌入式 │
├─────────┼────────────┼─────────────┼──────────────┼───────────────┤
│ 团队门槛 │ 中等 │ 低(Java转型)│ 低 │ 高 │
├─────────┼────────────┼─────────────┼──────────────┼───────────────┤
│ 负责服务 │ MA网关 │ 工作台BFF │ 审核AI管道 │ C2PA SDK │
│ │ 赋码引擎 │ 审核编排 │ 版权链交互 │ 视频指纹 │
│ │ 清算引擎 │ 平台接入 │ 文档生成 │ 编解码加速 │
│ │ 区块链服务 │ 数据回传 │ 任务调度 │ │
│ │ │ 报表对账 │ │ │
│ │ │ 通知回调 │ │ │
├─────────┼────────────┼─────────────┼──────────────┼───────────────┤
│ 框架 │ Gin/Echo │ Spring Boot │ FastAPI │ c2pa-rs │
│ │ GORM │ 3.x+WebFlux │ Celery │ PyO3/N-API │
│ │ ChainMaker │ Exposed/R2DBC│ SQLAlchemy │ CGO │
│ │ SDK │ Ktor(备选) │ Triton Cli │ │
├─────────┼────────────┼─────────────┼──────────────┼───────────────┤
│ 构建产物 │ 静态二进制 │ JVM JAR/ │ Docker容器 │ .so/.dylib │
│ │ <20MB │ Native(GraalVM)│ + wheel │ + WASM │
├─────────┼────────────┼─────────────┼──────────────┼───────────────┤
│ 一期占比 │ 35% │ 25% │ 30% │ 10% │
│ 三期占比 │ 30% │ 35% │ 20% │ 15% │
└─────────┴────────────┴─────────────┴──────────────┴───────────────┘
选型理由可视化(雷达图)
建议绘制 4 个重叠雷达图,5 个维度轴:
- 性能 (Performance)
- 生态成熟度 (Ecosystem)
- 团队可得性 (Hiring)
- 类型安全 (Type Safety)
- AI/ML亲和力 (AI Affinity)
Go: 性能★★★★☆ 生态★★★★★ 招聘★★★★☆ 类型★★★☆☆ AI★★☆☆☆
Kotlin: 性能★★★★☆ 生态★★★★★ 招聘★★★★★ 类型★★★★★ AI★★★☆☆
Python: 性能★★☆☆☆ 生态★★★★☆ 招聘★★★★★ 类型★★☆☆☆ AI★★★★★
Rust: 性能★★★★★ 生态★★★☆☆ 招聘★★☆☆☆ 类型★★★★★ AI★★☆☆☆
四、Kotlin 在系统中的具体定位与服务拆分
┌─────────────────────────────────────────────────────────────┐
│ Kotlin 服务群(Spring Boot 3.x) │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ workbench-bff (工作台聚合网关) │ │
│ │ · GraphQL/REST → 聚合赋码+审核+分账数据 │ │
│ │ · WebFlux 非阻塞 · R2DBC 响应式DB │ │
│ │ · 协程处理:并行调用多个下游微服务 │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ review-orchestrator (审核编排服务) │ │
│ │ · 状态机驱动(Spring StateMachine / 自研 Kotlin DSL)│ │
│ │ · queued→preprocessing→inferencing→fusion→completed │ │
│ │ · 协程编排多个AI模型的并行推理结果聚合 │ │
│ │ · 优先级队列管理(P/G/O 三级) │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ platform-access-svc (平台接入管理) │ │
│ │ · 平台注册/激活/冻结全生命周期 │ │
│ │ · API Key 管理 · 配额管控 · OAuth2 Server │ │
│ │ · 多租户数据隔离 │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ data-ingest-svc (数据回传服务) │ │
│ │ · Kafka Consumer (Kotlin Coroutines) │ │
│ │ · 批量数据校验 + ClickHouse 批写入 │ │
│ │ · 播放数据聚合 · 异常检测触发 │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ report-svc (报表与对账服务) │ │
│ │ · 定时任务(Spring Scheduler + Coroutines) │ │
│ │ · 月度对账单 · 版权估值报告 · 监管日报 │ │
│ │ · 导出 PDF/Excel │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ notification-svc (通知与回调服务) │ │
│ │ · WebHook 回调(审核完成/赋码成功/分账到账) │ │
│ │ · 邮件/短信/站内信 · 重试+幂等 │ │
│ │ · Spring Retry + Kotlin sealed class 状态建模 │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ 技术栈明细: │
│ · Kotlin 2.0 + Spring Boot 3.3 + Spring WebFlux │
│ · Kotlin Coroutines + Flow(响应式流) │
│ · Exposed / R2DBC(响应式数据库访问) │
│ · Spring Security + OAuth2 Resource Server │
│ · Kotest(测试)+ MockK(Mock)+ Testcontainers │
│ · GraalVM Native Image(可选,冷启动优化) │
│ · Gradle Kotlin DSL 构建 │
└─────────────────────────────────────────────────────────────┘
五、右栏:技术路线甘特图
绘制方式:横向时间轴 + 纵向服务/组件行
时间轴 → M1 M2 M3 M4 M5 M6 │ M7 M8 M9 M10 M11 M12 │ Y2
├─────── 一期:筑基 ─────────┤├──────── 二期:贯通 ──────────┤├─ 三期 ─→
═══════════════════════════════════════════════════════════════════════════════
基础设施
─────────────────────────────────────────────────────────────────────────────
K8s集群 ████████ 升级1.30+→
PG+Redis+Kafka ████████
等保三级测评 ░░░░░░░░░░░░░░░░████ 复测
Harbor+Vault ████
═══════════════════════════════════════════════════════════════════════════════
Go 服务
─────────────────────────────────────────────────────────────────────────────
赋码引擎V1 ████████████████
MA网关V1 ████████████
清算引擎V1 ████████████████
区块链服务V1 ████████████████████
MA网关V2(根解析) ████████████
═══════════════════════════════════════════════════════════════════════════════
Kotlin 服务
─────────────────────────────────────────────────────────────────────────────
工作台BFF V1 ████████████████
审核编排V1 ████████████████
平台接入管理 ████████████
工作台BFF V2 ████████████
数据回传服务 ████████
报表对账服务 ████████████
通知回调服务 ████████
平台接入V2(OAuth2) ████████
═══════════════════════════════════════════════════════════════════════════════
Python 服务
─────────────────────────────────────────────────────────────────────────────
审核AI管道V1(画面+台词) ████████████████████
文档生成(PDF证书) ████████
审核AI管道V2(+声音+真实性) ████████████████████████
版权链交互层 ████████████████
═══════════════════════════════════════════════════════════════════════════════
Rust 服务
─────────────────────────────────────────────────────────────────────────────
C2PA SDK V1(Python绑定) ████████████████
视频指纹提取 ████████████████
C2PA SDK V2(JS/Go绑定) ████████████████
WASM边缘模块(机顶盒) ████████→
═══════════════════════════════════════════════════════════════════════════════
区块链
─────────────────────────────────────────────────────────────────────────────
ChainMaker部署+合约V1 ████████████████████████
版权主链合约 ████████████████
用户权益合约 ████████████████
分账清算合约 ████████████████
═══════════════════════════════════════════════════════════════════════════════
AI 模型
─────────────────────────────────────────────────────────────────────────────
画面合规模型V1 ████████████████
台词NLP模型V1 ████████████████
Triton部署+调优 ████████████████
声音合规模型V1 ████████████████
AIGC真实性模型V1 ████████████████████
版权指纹+Milvus ████████████████
模型V2全量迭代 ████→
═══════════════════════════════════════════════════════════════════════════════
六、服务间通信矩阵(附图)
┌───────────────────────────────────────────────────────────────┐
│ 服务间通信方式矩阵 │
├─────────────────┬──────────┬──────────┬──────────┬───────────┤
│ 调用方 → 被调方 │ 同步REST │ 异步Kafka│ gRPC │ 内部SDK │
├─────────────────┼──────────┼──────────┼──────────┼───────────┤
│ 工作台BFF(Kt) │ → 赋码(Go)│ │ │ │
│ │ → 审核(Kt)│ │ │ │
│ │ → 清算(Go)│ │ │ │
├─────────────────┼──────────┼──────────┼──────────┼───────────┤
│ 赋码引擎(Go) │ │ → 审核 │ │ │
│ │ │ → 链服务 │ │ → C2PA(Rust)│
├─────────────────┼──────────┼──────────┼──────────┼───────────┤
│ 审核编排(Kt) │ → Triton │ │ │ → 指纹(Rust)│
│ │(HTTP/gRPC)│→ 链服务 │ │ │
├─────────────────┼──────────┼──────────┼──────────┼───────────┤
│ 清算引擎(Go) │ │ → 链服务 │ │ │
│ │ → CH查询 │ │ │ │
├─────────────────┼──────────┼──────────┼──────────┼───────────┤
│ 链服务(Go) │ │ ← 赋码 │→ ChainMaker│ │
│ │ │ ← 审核 │ (gRPC) │ │
│ │ │ → 确认 │ │ │
├─────────────────┼──────────┼──────────┼──────────┼───────────┤
│ 数据回传(Kt) │ │ ← 网关 │ │ │
│ │ → CH写入 │ → 清算 │ │ │
├─────────────────┼──────────┼──────────┼──────────┼───────────┤
│ MA网关(Go) │ → ZIIOT │ → 播放 │ │ │
│ │ ← 平台 │ │ │ │
└─────────────────┴──────────┴──────────┴──────────┴───────────┘
通信规范:
· 同步REST: OpenAPI 3.1 规范 · 超时3s · 重试2次 · 熔断(Resilience4j/Go breaker)
· 异步Kafka: Avro/JSON Schema Registry · 幂等消费 · DLQ兜底
· gRPC: Protobuf 3 · 双向流 · 链上事件订阅
· 内部SDK: Rust FFI (CGO/PyO3) · 进程内调用 · 零网络开销
七、关键技术决策记录(ADR 摘要,图旁备注)
| 决策编号 | 决策 | 理由 | 替代方案 |
|---|---|---|---|
| ADR-001 | Go 作为网关/赋码/清算语言 | 单机万级QPS,编译为静态二进制,容器镜像<20MB | Java(GC暂停),Rust(开发效率) |
| ADR-002 | Kotlin 作为业务中台语言 | Spring生态+协程+空安全,Java团队无缝迁移 | Java 21(虚拟线程),Go(缺乏Spring生态) |
| ADR-003 | Python 专注AI管道 | PyTorch/Triton Client原生支持,模型迭代快 | Kotlin(JVM推理慢),Go(AI生态弱) |
| ADR-004 | Rust 负责C2PA与媒体处理 | c2pa-rs官方实现,零GC大文件处理,安全关键 | Go(无c2pa库),C++(内存安全) |
| ADR-005 | 长安链优先于Fabric | 国密原生支持,国产自主可控,等保三级必要 | Fabric(成熟但国密需额外适配) |
| ADR-006 | PostgreSQL 而非 MySQL | JSONB灵活schema,高级索引,PostGIS备用 | MySQL 8(JSONB弱),TiDB(运维复杂) |
| ADR-007 | Kafka 而非 RabbitMQ | 海量播放数据(日亿级)吞吐需求,持久化回溯 | RabbitMQ(吞吐不足),Pulsar(生态不成熟) |
| ADR-008 | Kotlin Coroutines而非WebFlux纯响应式 | 代码可读性远优于Reactor链式,调试友好 | Reactor Mono/Flux(回调地狱),Vert.x |
八、性能指标与容量规划(图旁表格)
| 指标 | 一期目标 | 二期目标 | 三期目标 |
|---|---|---|---|
| MA网关解析QPS | 2,000 | 10,000 | 50,000 |
| 赋码引擎TPS | 100 | 500 | 2,000 |
| AI审核吞吐(部/天) | 500 | 5,000 | 50,000 |
| 播放数据写入(条/秒) | 10,000 | 100,000 | 1,000,000 |
| 链上TPS | 100 | 500 | 2,000 |
| P99延迟(网关解析) | <50ms | <30ms | <20ms |
| P99延迟(赋码流程) | <5s | <3s | <1s |
| 存储容量 | 50TB | 200TB | 1PB+ |
九、视觉设计建议
| 元素 | 建议 |
|---|---|
| 语言色彩编码 | Go=天蓝 · Kotlin=紫色 · Python=金黄 · Rust=橙红 |
| 层级色彩 | 接入层-浅灰 · 服务层-白底+语言色块 · 数据层-深灰 · 基础设施-黑色 |
| 连线 | 同步调用=实线 · 异步Kafka=虚线+闪电图标 · gRPC=双线 · FFI=波浪线 |
| 甘特图配色 | Go任务=天蓝条 · Kotlin任务=紫色条 · Python=金黄 · Rust=橙红 · 基础设施=灰 |
| 信息层次 | 架构师看左栏分层 · 开发者看中栏选型 · PM看右栏路线图 |
本文档是面向技术专家的"深度详图"绘制蓝图。
与"全景图"的区别:全景图侧重业务+技术平衡,本图100%聚焦技术实现细节。
Kotlin 作为第四种核心语言加入,承担原方案中 Python 业务编排层与部分 Go 业务服务的职责, 形成 Go(网关/计算) + Kotlin(业务中台) + Python(AI) + Rust(底层) 的四语言协同架构。