轻松聘AI开发
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

86 lines
2.6 KiB

@startuml 轻松聘mydreamjob_产品开发方案_架构图
' =========================
' 轻松聘(mydreamjob)产品开发方案 — 架构图
' =========================
title 轻松聘(mydreamjob)产品开发方案 - 总体架构
skinparam rectangle {
BackgroundColor<<client>> #E3F2FD
BackgroundColor<<gateway>> #FFF3E0
BackgroundColor<<app>> #E8F5E9
BackgroundColor<<differentiate>> #FCE4EC
BackgroundColor<<data>> #F3E5F5
BorderColor #455A64
FontStyle bold
}
skinparam defaultTextAlignment center
skinparam componentStyle rectangle
skinparam note {
BackgroundColor #FFFDE7
BorderColor #F57F17
}
' ---------- 客户端层 ----------
package "客户端层" {
[Android App] as Android <<client>>
[iOS App] as iOS <<client>>
}
' ---------- 跨端框架(核心差异化) ----------
rectangle "Flutter 3 跨端\n(一套代码出双端)" <<differentiate>> as Flutter
Android -[hidden]right- iOS
Android -down- Flutter : 渲染
iOS -down- Flutter : 渲染
' ---------- API 网关 ----------
rectangle "API 网关 / Nginx" <<gateway>> as Gateway
Flutter -down- Gateway : HTTPS / JSON
Android -down- Gateway : HTTPS / JSON
iOS -down- Gateway : HTTPS / JSON
' ---------- 应用层 ----------
package "应用服务层 (Spring Boot 3.x · Java 17)" <<app>> {
rectangle "Spring Security\n(JWT 鉴权 / RBAC 权限)" as Security
rectangle "业务服务\n账号/档案/企业/岗位/投递/沟通" as Biz
rectangle "ranking 评价排名引擎\n(异步批算)" as Ranking <<differentiate>>
rectangle "AI 适配层\n(模型调用/降级/成本控制)" as AI
rectangle "运营后台 API" as Admin
note right of Ranking
核心差异化模块
end note
Security -[hidden]down- Biz
Biz -[hidden]down- Ranking
Ranking -[hidden]down- AI
AI -[hidden]down- Admin
}
Gateway -down- Security : 路由转发
Security -down- Biz : 鉴权后
Biz -down- Ranking : 调用
Biz -down- AI : 调用
Admin -up- Biz : 读写
' ---------- 数据层 ----------
package "数据存储层" <<data>> {
database "MySQL 8\n主数据" as MySQL
database "Redis\n缓存 / 限流" as Redis
queue "RabbitMQ\n异步队列" as MQ
storage "MinIO / S3\n文件存储" as OSS
}
Biz -down- MySQL : CRUD
Biz -down- Redis : 缓存 / 限流
Ranking -down- MQ : 异步批算任务
Biz -down- OSS : 简历 / 图片
AI -down- Redis : 限流 / 缓存
Admin -down- MySQL : 读写
@enduml