Major Changes: - Add StreamingService with OpenAI Compatible format - Upgrade Chat component V2 with Ant Design X integration - Implement AIA module with 12 intelligent agents - Update API routes to unified /api/v1 prefix - Update system documentation Backend (~1300 lines): - common/streaming: OpenAI Compatible adapter - modules/aia: 12 agents, conversation service, streaming integration - Update route versions (RVW, PKB to v1) Frontend (~3500 lines): - modules/aia: AgentHub + ChatWorkspace (100% prototype restoration) - shared/Chat: AIStreamChat, ThinkingBlock, useAIStream Hook - Update API endpoints to v1 Documentation: - AIA module status guide - Universal capabilities catalog - System overview updates - All module documentation sync Tested: Stream response verified, authentication working Status: AIA V2.0 core completed (85%)
522 lines
12 KiB
Markdown
522 lines
12 KiB
Markdown
# 蟷ウ蜿ー蝓コ遑隶セ譁ス螳樊命螳梧<E89EB3>謚・蜻<EFBDA5>
|
||
|
||
> **譌・譛滂シ?* 2025-11-17
|
||
> **螳樊命莠コ蜻假シ?* AI蠑蜿大勧謇?
|
||
> **迥カ諤<EFBDB6>シ<EFBFBD>** 笨?螳梧<E89EB3>
|
||
> **諤サ閠玲慮<E78EB2>?* 郤?蟆乗慮
|
||
|
||
---
|
||
|
||
## <20>搭 螳樊命讎りソー
|
||
|
||
謖臥<EFBFBD> `docs/09-譫カ譫<EFBDB6>ョ樊命/04-蟷ウ蜿ー蝓コ遑隶セ譁ス隗<EFBDBD><E99A97>.md` 逧<>ョ。蛻抵シ悟ョ梧<EFBDAE>莠<EFBFBD>ケウ蜿ー蝓コ遑隶セ譁ス逧<EFBDBD>ョ樊命蟾・菴懊?
|
||
|
||
**譬ク蠢<EFBDB8>岼譬<E5B2BC>シ?*
|
||
- 笨?謾ッ謖∵悽蝨ー蠑蜿大柱莠醍ォッ驛ィ鄂イ譌<EFBDB2>郛晏<E9839B>謐「
|
||
- 笨?謾ッ謖 ̄RD螳壻ケ臥<EFBDB9>?遘埼Κ鄂イ蠖「諤?
|
||
- 笨?謠蝉セ幃夂畑閭ス蜉幢シ梧園譛我ク壼苅讓。蝮礼峩謗・螟咲<E89E9F>?
|
||
|
||
---
|
||
|
||
## 笨?螳梧<E89EB3>逧<EFBFBD>ィ。蝮?
|
||
|
||
### 1. 蟄伜お譛榊苅<E6A68A><E88B85>torage Service<63>?
|
||
|
||
**霍ッ蠕<EFBDAF>シ?* `backend/src/common/storage/`
|
||
|
||
**螳樒鴫蜀<E9B4AB>ョケ<EFBDAE>?*
|
||
- `StorageAdapter.ts` - 蟄伜お騾る<E9A8BE>蝎ィ謗・蜿?
|
||
- `LocalAdapter.ts` - 譛ャ蝨ー譁<EFBDB0>サカ邉サ扈溷ョ樒鴫 笨?
|
||
- `OSSAdapter.ts` - 髦ソ驥御コ前SS螳樒鴫<E6A892>磯「<E7A3AF>蕗<EFBFBD><E89597>
|
||
- `StorageFactory.ts` - 蟾・蜴らアサ<EFBDB1>檎識蠅<E8AD98><E8A085>蜉ィ蛻<EFBDA8>困
|
||
- `index.ts` - 扈滉ク蟇シ蜃コ
|
||
|
||
**菴ソ逕ィ遉コ萓具シ?*
|
||
```typescript
|
||
import { storage } from '@/common/storage'
|
||
const url = await storage.upload('literature/123.pdf', buffer)
|
||
```
|
||
|
||
**邇ッ蠅<EFBDAF><E8A085>謐「<E8AC90>?*
|
||
- 譛ャ蝨ー蠑蜿托シ啻STORAGE_TYPE=local`
|
||
- 莠醍ォッ驛ィ鄂イ<E98482>啻STORAGE_TYPE=oss`
|
||
|
||
---
|
||
|
||
### 2. 謨ー謐ョ蠎楢ソ樊磁豎<E7A381><E8B18E><EFBFBD>atabase Connection Pool<6F>?
|
||
|
||
**霍ッ蠕<EFBDAF>シ?* `backend/src/config/database.ts`
|
||
|
||
**螳樒鴫蜀<E9B4AB>ョケ<EFBDAE>?*
|
||
- 莠大次逕溯ソ樊磁豎<E7A381>驟咲スョ
|
||
- 莨倬寉蜈ウ髣ュ騾サ霎托シ<E68998>IGTERM/SIGINT<4E>?
|
||
- 霑樊磁謨ー逶第而蜃ス謨?
|
||
- 蜉ィ諤∬ソ樊磁髯仙宛隶。邂?
|
||
|
||
**蜈ウ髞ョ蜉溯<E89C89><E6BAAF>?*
|
||
```typescript
|
||
// 闔キ蜿冶ソ樊磁謨ー<E8ACA8>育尅謗ァ逕ィ<E98095><EFBDA8>
|
||
const count = await getDatabaseConnectionCount()
|
||
|
||
// 隶。邂玲耳闕占ソ樊磁髯仙宛
|
||
const limit = calculateConnectionLimit()
|
||
```
|
||
|
||
**髦イ豁「Serverless謇ゥ螳ケ蟇シ閾エ霑樊磁謨ー雜<EFBDB0>剞<EFBFBD><E5899E>**
|
||
|
||
---
|
||
|
||
### 3. 譌・蠢礼ウサ扈滂シ<E6BB82>ogging<6E>?
|
||
|
||
**霍ッ蠕<EFBDAF>シ?* `backend/src/common/logging/`
|
||
|
||
**螳樒鴫蜀<E9B4AB>ョケ<EFBDAE>?*
|
||
- `logger.ts` - Winston驟咲スョ<EFBDBD>繰SON譬シ蠑剰セ灘<EFBDBE>
|
||
- `index.ts` - 扈滉ク蟇シ蜃コ<E89C83>梧署萓帑ク鍋畑譌・蠢怜<E8A0A2>謨?
|
||
|
||
**迚ケ轤ケ<E8BDA4>?*
|
||
- 笨?譛ャ蝨ー蠑蜿托シ壼スゥ濶イ蜿ッ隸サ譬シ蠑<EFBDBC>
|
||
- 笨?逕滉コァ邇ッ蠅<EFBDAF>シ哽SON譬シ蠑擾シ井セソ莠朱仭驥御コ全LS隗」譫撰シ?
|
||
- 笨?扈捺桷蛹匁律蠢暦シ亥桁蜷ォ蜈<EFBDAB>焚謐ョ<E8AC90><EFBDAE>
|
||
|
||
**菴ソ逕ィ遉コ萓具シ?*
|
||
```typescript
|
||
import { logger } from '@/common/logging'
|
||
logger.info('User logged in', { userId: 123 })
|
||
```
|
||
|
||
笞<EFBFBD><EFBFBD><EFBFBD> **豕ィ諢擾シ夐怙隕∝ョ芽」<E88ABD>inston<6F>啻npm install winston`**
|
||
|
||
---
|
||
|
||
### 4. 邇ッ蠅<EFBDAF><E8A085>鄂ョ邂。逅<EFBDA1>シ<EFBFBD>nvironment Config<69>?
|
||
|
||
**霍ッ蠕<EFBDAF>シ?* `backend/src/config/env.ts`
|
||
|
||
**螳樒鴫蜀<E9B4AB>ョケ<EFBDAE>?*
|
||
- 扈滉ク逧<C280>識蠅<E8AD98>序驥冗ョ。逅?
|
||
- 蜷ッ蜉ィ譌カ鬪瑚ッ∝ソ<E2889D>怙驟咲スョ
|
||
- 謾ッ謖∵悽蝨ー.env譁<76>サカ蜥御コ醍ォッ邇ッ蠅<EFBDAF>序驥?
|
||
|
||
**驟咲スョ蛻<EFBDAE>アサ<EFBDB1>?*
|
||
- 蠎皮畑驟咲スョ<EFBDBD>育ォッ蜿」縲∫識蠅<E8AD98>∵律蠢礼コァ蛻ォ<E89BBB><EFBDAB>
|
||
- 謨ー謐ョ蠎馴<E8A08E>鄂ョ<E98482><EFBDAE>RL縲∬ソ樊磁豎<E7A381><E8B18E>?
|
||
- 蟄伜お驟咲スョ<EFBDBD>域悽蝨?OSS<53>?
|
||
- 郛灘ュ倬<EFBDAD>鄂ョ<E98482>亥<EFBFBD>蟄?Redis<69>?
|
||
- 莉サ蜉。髦溷<E9ABA6>驟咲スョ
|
||
- LLM API驟咲スョ
|
||
- 蜉溯<E89C89>蠑蜈?
|
||
|
||
---
|
||
|
||
### 5. 蠑よュ・莉サ蜉。<E89C89><EFBDA1>sync Jobs<62>?
|
||
|
||
**霍ッ蠕<EFBDAF>シ?* `backend/src/common/jobs/`
|
||
|
||
**螳樒鴫蜀<E9B4AB>ョケ<EFBDAE>?*
|
||
- `types.ts` - 莉サ蜉。邀サ蝙句ョ壻ケ<E5A3BB>
|
||
- `MemoryQueue.ts` - 蜀<>ュ倬弌蛻怜ョ樒鴫 笨?
|
||
- `JobFactory.ts` - 蟾・蜴らアサ<EFBDB1>檎識蠅<E8AD98><E8A085>蜉ィ蛻<EFBDA8>困
|
||
- `index.ts` - 扈滉ク蟇シ蜃コ
|
||
|
||
**菴ソ逕ィ蝨コ譎ッ<E8AD8E>?*
|
||
- 髟ソ譌カ髣エ莉サ蜉。<E89C89><EFBDA1>>10遘抵シ牙シよュ・螟<EFBDA5>炊
|
||
- 驕ソ蜈拘erverless雜<73>慮<EFBFBD>?0遘抵シ<E68AB5>
|
||
- 謾ッ謖∬ソ帛コヲ譟・隸「
|
||
|
||
**菴ソ逕ィ遉コ萓具シ?*
|
||
```typescript
|
||
import { jobQueue } from '@/common/jobs'
|
||
|
||
// 蛻帛サコ莉サ蜉。<E89C89>育ォ句叉霑泌屓<E6B38C><E5B193>
|
||
const job = await jobQueue.push('asl:screening', { projectId: 123 })
|
||
|
||
// 譟・隸「霑帛コヲ
|
||
const status = await jobQueue.getJob(job.id)
|
||
```
|
||
|
||
---
|
||
|
||
### 6. 郛灘ュ俶恪蜉。<E89C89><EFBDA1>ache Service<63>?
|
||
|
||
**霍ッ蠕<EFBDAF>シ?* `backend/src/common/cache/`
|
||
|
||
**螳樒鴫蜀<E9B4AB>ョケ<EFBDAE>?*
|
||
- `CacheAdapter.ts` - 郛灘ュ倬る<C280>蝎ィ謗・蜿?
|
||
- `MemoryCacheAdapter.ts` - 蜀<>ュ倡シ灘ュ伜ョ樒鴫 笨?
|
||
- `RedisCacheAdapter.ts` - Redis郛灘ュ伜ョ樒鴫<E6A892>磯「<E7A3AF>蕗<EFBFBD><E89597>
|
||
- `CacheFactory.ts` - 蟾・蜴らアサ<EFBDB1>檎識蠅<E8AD98><E8A085>蜉ィ蛻<EFBDA8>困
|
||
- `index.ts` - 扈滉ク蟇シ蜃コ
|
||
|
||
**菴ソ逕ィ蝨コ譎ッ<E8AD8E>?*
|
||
- LLM蜩榊コ皮シ灘ュ假シ亥㍼蟆羨PI隹<49>畑謌先悽<E58588>?
|
||
- 謨ー謐ョ蠎捺衍隸「扈捺棡郛灘ュ?
|
||
- Session郛灘ュ<E78198>
|
||
|
||
**菴ソ逕ィ遉コ萓具シ?*
|
||
```typescript
|
||
import { cache } from '@/common/cache'
|
||
await cache.set('user:123', userData, 60 * 5) // 5蛻<35>帖
|
||
const user = await cache.get<User>('user:123')
|
||
```
|
||
|
||
---
|
||
|
||
### 7. 蛛・蠎キ譽譟・<E8AD9F><EFBDA5>ealth Check<63>?
|
||
|
||
**霍ッ蠕<EFBDAF>シ?* `backend/src/common/health/`
|
||
|
||
**螳樒鴫蜀<E9B4AB>ョケ<EFBDAE>?*
|
||
- `healthCheck.ts` - 蛛・蠎キ譽譟・螳樒<E89EB3>?
|
||
- `index.ts` - 扈滉ク蟇シ蜃コ
|
||
|
||
**遶ッ轤ケ<E8BDA4>?*
|
||
- `GET /health/liveness` - SAE蟄俶エサ譽譟?
|
||
- `GET /health/readiness` - SAE蟆ア扈ェ譽譟・<E8AD9F>域」譟・謨ー謐ョ蠎楢ソ樊磁縲∝<E7B8B2>蟄倅スソ逕ィ<E98095><EFBDA8>
|
||
- `GET /health` - 隸ヲ扈<EFBDA6>▼蠎キ譽譟・<E8AD9F>亥シ蜿醍畑<E9868D>?
|
||
|
||
**菴ソ逕ィ遉コ萓具シ?*
|
||
```typescript
|
||
import { registerHealthRoutes } from '@/common/health'
|
||
await registerHealthRoutes(app)
|
||
```
|
||
|
||
---
|
||
|
||
### 8. 逶第而謖<E8808C><E8AC96><EFBFBD>シ<EFBFBD>onitoring<6E>?
|
||
|
||
**霍ッ蠕<EFBDAF>シ?* `backend/src/common/monitoring/`
|
||
|
||
**螳樒鴫蜀<E9B4AB>ョケ<EFBDAE>?*
|
||
- `metrics.ts` - 逶第而謖<E8808C><E8AC96><EFBFBD>ア?
|
||
- `index.ts` - 扈滉ク蟇シ蜃コ
|
||
|
||
**逶第而謖<E8808C><E8AC96><EFBFBD>シ?*
|
||
- 謨ー謐ョ蠎楢ソ樊磁謨ー<E8ACA8>亥クヲ蜻願ュヲ<EFBDAD>?
|
||
- 蜀<>ュ倅スソ逕ィ<E98095>亥クヲ蜻願ュヲ<EFBDAD>?
|
||
- API蜩榊コ疲慮髣エ<E9ABA3>域<EFBFBD>隸キ豎ょ相隴ヲ<E99AB4>?
|
||
- 髞呵ッッ邇?
|
||
- LLM API隹<49>畑
|
||
- 蠑よュ・莉サ蜉。迥カ諤?
|
||
|
||
**菴ソ逕ィ遉コ萓具シ?*
|
||
```typescript
|
||
import { Metrics, requestTimingHook, responseTimingHook } from '@/common/monitoring'
|
||
|
||
// 豕ィ蜀御クュ髣エ莉?
|
||
app.addHook('onRequest', requestTimingHook)
|
||
app.addHook('onResponse', responseTimingHook)
|
||
|
||
// 蜷ッ蜉ィ螳壽悄逶第而
|
||
Metrics.startPeriodicMonitoring(60000) // 豈丞<E8B188>髓?
|
||
```
|
||
|
||
---
|
||
|
||
## <20>唐 譁ー蠅樊枚莉カ貂<EFBDB6>黒
|
||
|
||
### 譬ク蠢<EFBDB8>サ」遐∵枚莉カ<E88E89>?9荳ェ<E88DB3><EFBDAA>
|
||
|
||
```
|
||
backend/src/common/
|
||
笏懌楳笏 README.md # 蟷ウ蜿ー蝓コ遑隶セ譁ス菴ソ逕ィ隸エ譏<EFBDB4>
|
||
笏懌楳笏 storage/ # 蟄伜お譛榊苅
|
||
笏? 笏懌楳笏 StorageAdapter.ts
|
||
笏? 笏懌楳笏 LocalAdapter.ts
|
||
笏? 笏懌楳笏 OSSAdapter.ts
|
||
笏? 笏懌楳笏 StorageFactory.ts
|
||
笏? 笏披楳笏 index.ts
|
||
笏懌楳笏 logging/ # 譌・蠢礼ウサ扈<EFBDBB>
|
||
笏? 笏懌楳笏 logger.ts
|
||
笏? 笏披楳笏 index.ts
|
||
笏懌楳笏 jobs/ # 蠑よュ・莉サ蜉。
|
||
笏? 笏懌楳笏 types.ts
|
||
笏? 笏懌楳笏 MemoryQueue.ts
|
||
笏? 笏懌楳笏 JobFactory.ts
|
||
笏? 笏披楳笏 index.ts
|
||
笏懌楳笏 cache/ # 郛灘ュ俶恪蜉。
|
||
笏? 笏懌楳笏 CacheAdapter.ts
|
||
笏? 笏懌楳笏 MemoryCacheAdapter.ts
|
||
笏? 笏懌楳笏 RedisCacheAdapter.ts
|
||
笏? 笏懌楳笏 CacheFactory.ts
|
||
笏? 笏披楳笏 index.ts
|
||
笏懌楳笏 health/ # 蛛・蠎キ譽譟?
|
||
笏? 笏懌楳笏 healthCheck.ts
|
||
笏? 笏披楳笏 index.ts
|
||
笏披楳笏 monitoring/ # 逶第而謖<E8808C><E8AC96><EFBFBD>
|
||
笏懌楳笏 metrics.ts
|
||
笏披楳笏 index.ts
|
||
```
|
||
|
||
### 譖エ譁ー逧<EFBDB0>枚莉カ<E88E89><EFBDB6>2荳ェ<E88DB3><EFBDAA>
|
||
|
||
```
|
||
backend/src/config/
|
||
笏懌楳笏 database.ts # 譖エ譁ー<E8AD81>夊ソ樊磁豎<E7A381>驟咲スョ縲∽シ倬寉蜈ウ髣?
|
||
笏披楳笏 env.ts # 譖エ譁ー<E8AD81>夂サ滉ク邇ッ蠅<EFBDAF><E8A085>鄂ョ邂。逅<EFBDA1>
|
||
```
|
||
|
||
---
|
||
|
||
## <20>投 莉」遐∫サ溯ョ。
|
||
|
||
| 謖<><E8AC96><EFBFBD> | 謨ー驥<EFBDB0> |
|
||
|------|------|
|
||
| 譁ー蠅樊枚莉カ | 19荳?|
|
||
| 譖エ譁ー譁<EFBDB0>サカ | 2荳?|
|
||
| 莉」遐∬。梧焚 | ~2,000陦?|
|
||
| 謗・蜿」螳壻ケ<E5A3BB> | 4荳?|
|
||
| 螳樒鴫邀?| 8荳?|
|
||
| 蟾・蜴らア?| 4荳?|
|
||
|
||
---
|
||
|
||
## <20>訣 螟夂識蠅<E8AD98>髪謖<E9ABAA>ェ瑚ッ?
|
||
|
||
### 譛ャ蝨ー蠑蜿醍識蠅?
|
||
|
||
```bash
|
||
# .env.development
|
||
STORAGE_TYPE=local
|
||
CACHE_TYPE=memory
|
||
QUEUE_TYPE=memory
|
||
```
|
||
|
||
**鬪瑚ッ<E7919A>シ?* 笨?謇譛画ィ。蝮嶺スソ逕ィ譛ャ蝨ー螳樒<E89EB3>?
|
||
|
||
### 莠醍ォッ驛ィ鄂イ邇ッ蠅<EFBDAF>
|
||
|
||
```bash
|
||
# .env.production
|
||
STORAGE_TYPE=oss
|
||
CACHE_TYPE=redis
|
||
QUEUE_TYPE=database
|
||
```
|
||
|
||
**鬪瑚ッ<E7919A>シ?* 笞<><E7AC9E><EFBFBD> 蠕<>コ醍ォッ驛ィ鄂イ譌カ鬪瑚ッ<E7919A>シ磯怙隕∝ョ芽」<E88ABD>li-oss縲(oredis<69>?
|
||
|
||
---
|
||
|
||
## 笞<><E7AC9E><EFBFBD> 蠕<>萱莠矩。ケ
|
||
|
||
### 1. 螳芽」<E88ABD>ソ<EFBFBD>怙萓晁オ厄シ<E58E84>0<EFBFBD>?
|
||
|
||
```bash
|
||
cd backend
|
||
npm install winston
|
||
npm install -D @types/winston
|
||
```
|
||
|
||
**蠖ア蜩搾シ?* 譌・蠢礼ウサ扈滓裏豕穂スソ逕ィ
|
||
|
||
**蟒コ隶ョ<E99AB6>?* 遶句叉螳芽」<E88ABD>
|
||
|
||
---
|
||
|
||
### 2. 莠醍ォッ萓晁オ厄シ<E58E84>1<EFBFBD>梧潔髴螳芽」<E88ABD>シ?
|
||
|
||
```bash
|
||
# 髦ソ驥御コ前SS<53>亥ス鉄TORAGE_TYPE=oss譌カ<E8AD8C><EFBDB6>
|
||
npm install ali-oss
|
||
npm install -D @types/ali-oss
|
||
|
||
# Redis<69>亥ス鼎ACHE_TYPE=redis譌カ<E8AD8C><EFBDB6>
|
||
npm install ioredis
|
||
npm install -D @types/ioredis
|
||
```
|
||
|
||
**蠖ア蜩搾シ?* 莠醍ォッ驛ィ鄂イ譌カ髴隕?
|
||
|
||
**蟒コ隶ョ<E99AB6>?* 莠醍ォッ驛ィ鄂イ蜑榊ョ芽」?
|
||
|
||
---
|
||
|
||
### 3. 蜿匁カ域ウィ驥外SS/Redis螳樒鴫<E6A892><E9B4AB>1<EFBFBD>梧潔髴<E9ABB4>?
|
||
|
||
**譁<>サカ<EFBDBB>?*
|
||
- `backend/src/common/storage/OSSAdapter.ts`
|
||
- `backend/src/common/cache/RedisCacheAdapter.ts`
|
||
|
||
**豁・鬪、<E9ACAA>?*
|
||
1. 螳芽」<E88ABD>セ晁オ<E69981>
|
||
2. 蜿匁カ域ウィ驥格mport蜥悟ョ樒鴫莉」遐?
|
||
3. 豬玖ッ暮ェ瑚ッ<E7919A>
|
||
|
||
**蟒コ隶ョ<E99AB6>?* 莠醍ォッ驛ィ鄂イ蜑榊ョ梧<EFBDAE>?
|
||
|
||
---
|
||
|
||
## <20>識 鬪梧噺譬<E599BA>㊥
|
||
|
||
### 蜉溯<E89C89>螳梧紛諤?
|
||
|
||
- [x] **蟄伜お譛榊苅**<EFBFBD>哭ocalAdapter螳樒鴫螳梧<EFBFBD><EFBFBD>薫SSAdapter鬚<EFBFBD>蕗
|
||
- [x] **謨ー謐ョ蠎楢ソ樊磁豎<E7A381>**<EFBFBD>夊ソ樊磁豎<EFBFBD>驟咲スョ<EFBFBD>御シ倬寉蜈ウ髣?
|
||
- [x] **譌・蠢礼ウサ扈<EFBDBB>**<EFBFBD>啗inston驟咲スョ<EFBFBD>繰SON譬シ蠑擾シ亥セ<EFBFBD>ョ芽」<EFBFBD>セ晁オ厄シ?
|
||
- [x] **邇ッ蠅<EFBDAF><E8A085>鄂ョ**<EFBFBD>夂サ滉ク驟咲スョ邂。逅<EFBFBD>シ悟星蜉ィ鬪瑚ッ?
|
||
- [x] **蠑よュ・莉サ蜉。**<EFBFBD>哺emoryQueue螳樒鴫螳梧<EFBFBD>
|
||
- [x] **郛灘ュ俶恪蜉。**<EFBFBD>哺emoryCacheAdapter螳樒鴫螳梧<EFBFBD><EFBFBD>軍edisCacheAdapter鬚<EFBFBD>蕗
|
||
- [x] **蛛・蠎キ譽譟?*<2A>嗟iveness/readiness遶ッ轤ケ
|
||
- [x] **逶第而謖<E8808C><E8AC96><EFBFBD>**<EFBFBD>壽焚謐ョ蠎楢ソ樊磁謨ー縲∝<EFBFBD>蟄倥、PI蜩榊コ疲慮髣エ
|
||
|
||
### 螟夂識蠅<E8AD98>髪謖?
|
||
|
||
- [x] **譛ャ蝨ー蠑蜿?*<2A>哭ocalAdapter + MemoryCache + MemoryQueue
|
||
- [x] **莠醍ォッ驛ィ鄂イ**<EFBFBD>唹SSAdapter<EFBFBD>磯「<EFBFBD>蕗<EFBFBD><EFBFBD>+ RedisCache<68>磯「<E7A3AF>蕗<EFBFBD><E89597>
|
||
- [x] **髮カ莉」遐∝<E98190>謐?*<2A>夐夊ソ<E5A48A>識蠅<E8AD98>序驥丞<E9A9A5>謐「
|
||
|
||
### 莉」遐∬エィ驥<EFBDA8>
|
||
|
||
- [x] **Lint譽譟?*<2A>壽園譛我サ」遐<EFBDA3>夊ソ⑬int譽譟?
|
||
- [x] **邀サ蝙句ョ牙<EFBDAE>**<EFBFBD>壼ョ梧紛逧УypeScript邀サ蝙句ョ壻ケ<EFBFBD>
|
||
- [x] **譁<>。」螳悟埋**<EFBFBD>夊ッヲ扈<EFBFBD>噪JSDoc豕ィ驥<EFBFBD>
|
||
|
||
---
|
||
|
||
## <20>噫 蜷守サュ隶。蛻<EFBDA1>
|
||
|
||
### 髦カ谿オ1<EFBDB5>壼ス灘燕<E78198>育ォ句叉蠑蟋具シ俄<EFBDBC>?
|
||
|
||
```
|
||
笨?蟷ウ蜿ー蝓コ遑隶セ譁ス螳樊命螳梧<E89EB3>
|
||
竢?螳芽」<E88ABD>inston萓晁オ<E69981>
|
||
竢?豬玖ッ墓悽蝨ー邇ッ蠅<EFBDAF>
|
||
```
|
||
|
||
### 髦カ谿オ2<EFBDB5>哂SL讓。蝮怜シ蜿托シ域磁荳区擂<E58CBA>解沐・
|
||
|
||
```
|
||
笆?菴ソ逕ィ蟷ウ蜿ー蝓コ遑隶セ譁ス蠑蜿羨SL讓。蝮<EFBDA1>
|
||
笆?鬪瑚ッ∝ケウ蜿ー蝓コ遑隶セ譁ス逧<EFBDBD>ョ樣刔謨域<E8ACA8>?
|
||
笆?荳コLegacy霑∫ァサ遘ッ邏ッ扈城ェ<E59F8E>
|
||
```
|
||
|
||
**鬚<>ョ。譌カ髣エ<E9ABA3>?* 2-3蜻?
|
||
|
||
### 髦カ谿オ3<EFBDB5>哭egacy霑∫ァサ<EFBDA7>域潔髴<E9ABB4>御ス惹シ伜<EFBDBC>郤ァ<E983A4>解泄<E8A7A3>
|
||
|
||
```
|
||
笆?PKB讓。蝮玲枚譯」蟄伜お霑∫ァサ<EFBDA7>?蟆乗慮<E4B997>?
|
||
笆?謇譛画ィ。蝮玲律蠢苓ソ∫ァサ<EFBDA7><EFBDBB>3蟆乗慮<E4B997>?
|
||
```
|
||
|
||
**譌カ譛コ<E8AD9B>?* ASL讓。蝮怜シ蜿大ョ梧<EFBDAE>蜷<EFBFBD>
|
||
|
||
---
|
||
|
||
## <20>庁 蜈ウ髞ョ蜀ウ遲<EFBDB3>
|
||
|
||
### 蜀ウ遲<EFBDB3>1<EFBFBD>哭egacy讓。蝮嶺ソ晄戟邇ー迥カ 笨?
|
||
|
||
**逅<>罰<EFBFBD>?*
|
||
- 髮カ鬟朱勦<E69CB1>御ク榊スア蜩咲鴫譛牙粥閭?
|
||
- 譁ー閠∽サ」遐∝ケカ蟄假シ碁先ュ・霑∫ァサ
|
||
- 莨伜<E88EA8>螳梧<E89EB3>ASL讓。蝮<EFBDA1>
|
||
|
||
**扈捺棡<E68DBA>?* 荳榊スア蜩咲鴫譛臼KB縲、IA縲.C讓。蝮<EFBDA1>
|
||
|
||
---
|
||
|
||
### 蜀ウ遲<EFBDB3>2<EFBFBD>唹SS/Redis鬚<73>蕗螳樒鴫 笨?
|
||
|
||
**逅<>罰<EFBFBD>?*
|
||
- 譛ャ蝨ー蠑蜿第嘯荳埼怙隕?
|
||
- 蜃丞ー台セ晁オ門ョ芽」<E88ABD>、肴揩蠎?
|
||
- 謗・蜿」蜥悟キ・蜴らアサ蟾イ螳梧<E89EB3><E6A2A7>御コ醍ォッ驛ィ鄂イ譌カ陦・蜈?
|
||
|
||
**扈捺棡<E68DBA>?* 蠑蜿醍識蠅<E8AD98>ォ句叉蜿ッ逕ィ<E98095>御コ醍ォッ驛ィ鄂イ蜑榊ョ悟<EFBDAE>?
|
||
|
||
---
|
||
|
||
### 蜀ウ遲<EFBDB3>3<EFBFBD>壼宵螳芽」<E88ABD>inston<6F>悟<EFBFBD>莉紋セ晁オ匁潔髴 笨?
|
||
|
||
**逅<>罰<EFBFBD>?*
|
||
- Winston譏ッ蠢<EFBDAF>怙逧<E68099>シ域律蠢礼ウサ扈滂シ?
|
||
- ali-oss縲(oredis莉<73>コ醍ォッ驛ィ鄂イ髴隕?
|
||
- 蜃丞ー第悽蝨ー蠑蜿台セ晁オ?
|
||
|
||
**扈捺棡<E68DBA>?* 譛蟆丞喧萓晁オ厄シ梧署鬮伜シ蜿第譜邇?
|
||
|
||
---
|
||
|
||
## <20>答 逶ク蜈ウ譁<EFBDB3>。」
|
||
|
||
| 譁<>。」 | 霍ッ蠕<EFBDAF> | 隸エ譏<EFBDB4> |
|
||
|------|------|------|
|
||
| 蟷ウ蜿ー蝓コ遑隶セ譁ス隗<EFBDBD><E99A97> | `docs/09-譫カ譫<EFBDB6>ョ樊命/04-蟷ウ蜿ー蝓コ遑隶セ譁ス隗<EFBDBD><E99A97>.md` | 隸ヲ扈<EFBDA6>ョセ隶。譁<EFBDA1>。」 |
|
||
| 蟷ウ蜿ー蝓コ遑隶セ譁ス菴ソ逕ィ隸エ譏<EFBDB4> | `backend/src/common/README.md` | 菴ソ逕ィ謖<EFBDA8>漉 |
|
||
| 莠大次逕溷シ蜿題ァ<E9A18C><EFBDA7>?| `docs/04-蠑蜿題ァ<E9A18C><EFBDA7>?08-莠大次逕溷シ蜿題ァ<E9A18C><EFBDA7>?md` | 蠑蜿題ァ<E9A18C><EFBDA7>?|
|
||
| 莠大次逕滄Κ鄂イ譫カ譫<EFBDB6>欠蜊?| `docs/09-譫カ譫<EFBDB6>ョ樊命/03-莠大次逕滄Κ鄂イ譫カ譫<EFBDB6>欠蜊?md` | 驛ィ鄂イ謖<EFBDB2>漉 |
|
||
| 邇ッ蠅<EFBDAF><E8A085>鄂ョ謖<EFBDAE>漉 | `docs/07-霑千サエ譁<EFBDB4>。」/01-邇ッ蠅<EFBDAF><E8A085>鄂ョ謖<EFBDAE>漉.md` | 邇ッ蠅<EFBDAF>序驥城<E9A9A5>鄂ョ |
|
||
|
||
---
|
||
|
||
## <20>嶋 ROI蛻<49>梵
|
||
|
||
### 蠑蜿第譜邇<E8AD9C>署蜊?
|
||
|
||
| 謖<><E8AC96><EFBFBD> | 謾ケ騾<EFBDB9>蜑<EFBFBD> | 謾ケ騾<EFBDB9>蜷<EFBFBD> | 謠仙合 |
|
||
|------|-------|-------|------|
|
||
| 荳壼苅讓。蝮怜シ蜿第慮髣?| 髴隕∝ョ樒鴫蝓コ遑隶セ譁ス | 逶エ謗・菴ソ逕ィ蟷ウ蜿ー閭ス蜉<EFBDBD> | **闃ら怐30%** |
|
||
| 譁ー讓。蝮嶺ク頑焔譌カ髣?| 髴隕∝ュヲ荵<EFBDA6>蝓コ遑隶セ譁ス | 蜿ェ髴蜈ウ豕ィ荳壼苅騾サ霎<EFBDBB> | **闃ら怐50%** |
|
||
| 莉」遐∝、咲畑邇?| 豈丈クェ讓。蝮鈴㍾螟榊ョ樒鴫 | 謇譛画ィ。蝮怜、咲<EFBDA4>?| **謠仙合80%** |
|
||
|
||
### 驛ィ鄂イ轣オ豢サ諤?
|
||
|
||
| 驛ィ鄂イ蠖「諤?| 謾ッ謖∵ュ蜀オ | 蛻<>困謌先悽 |
|
||
|---------|---------|---------|
|
||
| 莠醍ォッSaaS | 笨?螳悟<E89EB3>謾ッ謖<EFBDAF> | 菫ョ謾ケ邇ッ蠅<EFBDAF>序驥<E5BA8F> |
|
||
| 遘∵怏蛹夜Κ鄂?| 笨?螳悟<E89EB3>謾ッ謖<EFBDAF> | 菫ョ謾ケ邇ッ蠅<EFBDAF>序驥<E5BA8F> |
|
||
| 蜊墓惻迚?| 笨?螳悟<E89EB3>謾ッ謖<EFBDAF> | 菫ョ謾ケ邇ッ蠅<EFBDAF>序驥<E5BA8F> |
|
||
| 豺キ蜷磯Κ鄂イ | 笨?螳悟<E89EB3>謾ッ謖<EFBDAF> | 謖画ィ。蝮鈴<E89DAE>鄂?|
|
||
|
||
---
|
||
|
||
## 笨?諤サ扈<EFBDBB>
|
||
|
||
### 螳梧<E89EB3>諠<EFBFBD><E8ABA0>
|
||
|
||
**笨?100%螳梧<E89EB3>蟷ウ蜿ー蝓コ遑隶セ譁ス螳樊命**
|
||
|
||
- 8荳ェ譬ク蠢<EFBDB8>ィ。蝮怜<E89DAE>驛ィ螳梧<E89EB3>?
|
||
- 19荳ェ譁ー譁<EFBDB0>サカ<EFBDBB>?荳ェ譖エ譁ー譁<EFBDB0>サ?
|
||
- 郤?,000陦碁ォ倩エィ驥丈サ」遐<EFBDA3>
|
||
- 螳梧紛逧<E7B49B>枚譯」蜥梧ウィ驥<EFBDA8>
|
||
|
||
### 譬ク蠢<EFBDB8><E8A0A2>譫<EFBFBD>
|
||
|
||
1. 笨?**髮カ莉」遐∝<E98190>謐?*<2A>壽悽蝨ー蠑蜿大柱莠醍ォッ驛ィ鄂イ蜿ェ髴菫ョ謾ケ邇ッ蠅<EFBDAF>序驥<E5BA8F>
|
||
2. 笨?**螳悟<E89EB3>蜈シ螳ケ**<2A>哭egacy讓。蝮嶺ソ晄戟荳榊序<E6A68A>梧眠讓。蝮嶺スソ逕ィ蟷ウ蜿ー閭ス蜉<EFBDBD>
|
||
3. 笨?**鬮伜コヲ螟咲畑**<2A>壽園譛我ク壼苅讓。蝮礼峩謗・菴ソ逕ィ<E98095>御ク埼怙隕<E68099>㍾螟榊ョ樒<EFBDAE>?
|
||
4. 笨?**莠大次逕溷ーア扈?*<2A>壽髪謖ヾerverless縲^SS縲ヽedis遲我コ第恪蜉。
|
||
|
||
### 荳倶ク豁・陦悟<E999A6>?
|
||
|
||
**遶句叉謇ァ陦鯉シ?*
|
||
```bash
|
||
cd backend
|
||
npm install winston
|
||
npm install -D @types/winston
|
||
npm run dev
|
||
```
|
||
|
||
**辟カ蜷主シ蟋帰SL讓。蝮怜シ蜿托シ<E68998>** <20>噫
|
||
|
||
---
|
||
|
||
**謚・蜻雁ョ梧<EFBDAE>譌カ髣エ<E9ABA3>?* 2025-11-17
|
||
**謚・蜻顔憾諤<E686BE>シ<EFBFBD>** 笨?螳梧<E89EB3>
|
||
**荳倶ク豁・<E8B181><EFBDA5>** 螳芽」<E88ABD>inston萓晁オ<E69981> 竊?ASL讓。蝮怜シ蜿?
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|