Files
AIclinicalresearch/docs/05-部署文档/12-Node.js后端-SAE部署操作手册.md
HaHafeng 1b53ab9d52 feat(aia): Complete AIA V2.0 with universal streaming capabilities
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%)
2026-01-14 19:15:01 +08:00

12 KiB
Raw Blame History

Node.js <20>𡒊垢 - SAE<41>函蔡<E587BD><EFBFBD><E6BBA2><EFBFBD>

<EFBFBD>𥕦遣<EFBFBD>園𡢿嚗?025-12-24 <EFBFBD><EFBFBD>撖寡情嚗鐭ode.js <20>𡒊垢<F0A1928A>滚𦛚 **<2A>函蔡<E587BD><EFBFBD>**嚗𡁻燵<F0A181BB><EFBFBD> SAE嚗𠄎erverless摨𠉛鍂撘閙<E69298>嚗? <EFBFBD><EFBFBD>園𡢿嚗?0-40<34><30><EFBFBD>


<EFBFBD><EFBFBD> <20>滨蔭璉<E894AD><E79289>?

<EFBFBD>憪衤<EFBFBD><EFBFBD><EFBFBD>霂瑞霈歹<EFBFBD>

  • Docker<EFBFBD>𨅯<EFBFBD>撌脫綫<EFBFBD><EFBFBD><EFBFBD>ACR嚗䫤backend-service:v1.0`
  • RDS PostgreSQL撌脤<E6928C>蝵脣僎餈<E5838E><EFBFBD>唳旿
  • Python敺格<EFBFBD><EFBFBD><EFBFBD>函蔡嚗<EFBFBD><EFBFBD>蝵穃𧑐<EFBFBD><EFBFBD>嚗䫤http://172.17.173.66:8000`嚗?
  • <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>滨蔭皜<EFBFBD><EFBFBD>撌脣<EFBFBD><EFBFBD><EFBFBD>閫?11-Node.js<6A>𡒊垢-SAE<41>函蔡<E587BD>滨蔭皜<E894AD><E79A9C>.md嚗?

<EFBFBD><EFBFBD> 蝚砌<E89D9A>甇伐<E79487><E4BC90><EFBFBD>SAE<41><EFBFBD><E689B9>啣僎<E595A3>𥕦遣摨𠉛鍂

1.1 餈𥕦<E9A488>SAE<41><EFBFBD><E689B9>?

  1. <EFBFBD><EFBFBD>瘚讛<EFBFBD><EFBFBD><EFBFBD>霈輸䔮嚗冴ttps://sae.console.aliyun.com/
  2. <EFBFBD>㗇𥋘<EFBFBD><EFBFBD>嚗?*<2A>𤾸<EFBFBD>2嚗<32><E59A97>鈭穿<E988AD>**
  3. <EFBFBD>㗇𥋘<EFBFBD><EFBFBD>蝛粹𡢿嚗?cn-beijing:test-airesearch*

1.2 <20>𥕦遣<F0A595A6><EFBFBD><E595A3>?

  1. <EFBFBD>孵稬<EFBFBD>𣂼<EFBFBD>撱箏<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
  2. 憛怠<EFBFBD><EFBFBD>箸𧋦靽⊥<EFBFBD>嚗?
摨𠉛鍂<EFBFBD>滨妍: nodejs-backend-test
<EFBFBD>函蔡<EFBFBD><EFBFBD>: 摰孵膥<EFBFBD>𨅯<EFBFBD>
  1. <EFBFBD>孵稬<EFBFBD>𣂷<EFBFBD><EFBFBD>甇乓<EFBFBD>?

<EFBFBD>閦 蝚砌<E89D9A>甇伐<E79487><E4BC90>滨蔭摰孵膥<E5ADB5>𨅯<EFBFBD>

2.1 <20>㗇𥋘<E39787>𨅯<EFBFBD><F0A885AF><EFBFBD>

  1. <EFBFBD>𨅯<EFBFBD>蝐餃<EFBFBD>嚗𡁻<EFBFBD>㗇𥋘 *摰孵膥<EFBFBD>𨅯<EFBFBD><EFBFBD>滚𦛚嚗㇁CR嚗?
  2. <EFBFBD>㗇𥋘摰硺<EFBFBD>嚗?銝芯犖<EFBFBD>?
  3. <EFBFBD>㗇𥋘<EFBFBD><EFBFBD>嚗?*<2A>𤾸<EFBFBD>2嚗<32><E59A97>鈭穿<E988AD>**

2.2 <20>滨蔭<E6BBA8>𨅯<EFBFBD>隞枏<E99A9E>霈方<E99C88>

<EFBFBD>𩤃<EFBFBD> **<2A><EFBFBD>**嚗𡁜<E59A97>憿餃<E686BF><E9A483>滨蔭霈方<E99C88><EFBFBD><EFBFBD><EFBFBD>瘜閙<E7989C><E99699>𣇉<EFBFBD><F0A38789><EFBFBD><E58EB0>?

  1. <EFBFBD>孵稬<EFBFBD><EFBFBD>蝵桅<EFBFBD><EFBFBD><EFBFBD>摨瓐<EFBFBD>?
  2. 憛怠<EFBFBD>霈方<EFBFBD>靽⊥<EFBFBD>嚗?
Registry<EFBFBD><EFBFBD>: crpi-cd5ij4pjt65mweeo-vpc.cn-beijing.personal.cr.aliyuncs.com
<EFBFBD><EFBFBD><EFBFBD>? gofeng117@163.com
<EFBFBD><EFBFBD>: fengzhibo117
  1. <EFBFBD>孵稬<EFBFBD>摰𠾼<EFBFBD>?
  2. <EFBFBD>孵稬<EFBFBD><EFBFBD><EFBFBD>恕霂<EFBFBD><EFBFBD>𡢅<EFBFBD>蝖桐<EFBFBD>霈方<EFBFBD><EFBFBD>𣂼<EFBFBD>

2.3 <20>㗇𥋘<E39787>𨅯<EFBFBD>

  1. <EFBFBD>㗇𥋘<EFBFBD><EFBFBD>蝛粹𡢿嚗?ai-clinical*
  2. <EFBFBD>㗇𥋘<EFBFBD>𨅯<EFBFBD>嚗?backend-service*
  3. <EFBFBD>㗇𥋘<EFBFBD>𨅯<EFBFBD><EFBFBD><EFBFBD>𧋦嚗?v1.0*

摰峕㟲<EFBFBD>𨅯<EFBFBD><EFBFBD><EFBFBD>摨娍遬蝷箔蛹嚗?

crpi-cd5ij4pjt65mweeo-vpc.cn-beijing.personal.cr.aliyuncs.com/ai-clinical/backend-service:v1.0
  1. <EFBFBD>孵稬<EFBFBD>𣂷<EFBFBD><EFBFBD>甇乓<EFBFBD>?

<EFBFBD><EFBFBD> 蝚砌<E89D9A>甇伐<E79487><E4BC90>滨蔭摨𠉛鍂<F0A0899B><E98D82>

3.1 <20><EFBFBD><E7AE87>滨蔭

摨𠉛鍂摰硺<EFBFBD><EFBFBD>? 1
CPU: 1<EFBFBD>?
<EFBFBD><EFBFBD><EFBFBD>: 2048 MB嚗?GB嚗?
摨𠉛鍂蝐餃<EFBFBD>: Web摨𠉛鍂

3.2 蝵𤑳<E89DB5><F0A491B3>滨蔭

  1. VPC<EFBFBD>滨蔭嚗?

    • VPC ID嚗䫤vpc-2ze055cptkew9c38w4r06`
    • 摰匧<EFBFBD><EFBFBD><EFBFBD>sg-2zedk6fi8sgmmcwdu7tu
    • <EFBFBD><EFBFBD><EFBFBD>鞱䌊<EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝵騌LB<EFBFBD>𡢅<EFBFBD><EFBFBD>?銝滚㗲<E6BB9A><EFBFBD><EFBFBD><E99A9E>蝵𤏸挪<F0A48FB8><EFBFBD>
  2. 蝡臬藁<EFBFBD>滨蔭嚗?

    • 摰孵膥蝡臬藁嚗䫤3001`
    • <EFBFBD>讛悅嚗䫤TCP`

3.3 <20><EFBFBD><E887AC><EFBFBD><E3979B>滨蔭

<EFBFBD>𩤃<EFBFBD> <EFBFBD>喲睸甇仿炊嚗𡁜<EFBFBD><EFBFBD>?11-Node.js<6A>𡒊垢-SAE<41>函蔡<E587BD>滨蔭皜<E894AD><E79A9C>.md 銝剔<E98A9D><E58994><EFBFBD><E887AC><EFBFBD>

*<EFBFBD><EFBFBD>A嚗𡁏鸌<EFBFBD>誩紡<EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?

  1. <EFBFBD>孵稬<EFBFBD>鞉鸌<EFBFBD>誩紡<EFBFBD><EFBFBD>?
  2. 憭滚<EFBFBD>隞乩<EFBFBD><EFBFBD><EFBFBD>捆蝎䁅斐嚗?
DATABASE_URL=postgresql://airesearch:Xibahe%40fengzhibo117@pgm-2zex1m2y3r23hdn5.pg.rds.aliyuncs.com:5432/ai_clinical_research?connection_limit=18&pool_timeout=10
JWT_SECRET=146c2fd064a69aa026496ee60e20483d07e951eae8323a501126469583433415
JWT_EXPIRES_IN=7d
DEEPSEEK_API_KEY=sk-7f8cc37a79fa4799860b38fc7ba2e150
DASHSCOPE_API_KEY=sk-75b4ff29a14a49e79667a331034f3298
CLOSEAI_API_KEY=sk-cu0ienbXYGGx2jc7BqP6ogtSWmP6fk918qV3RUdtGC3Ed1po
CLOSEAI_OPENAI_BASE_URL=https://api.openai-proxy.org/v1
CLOSEAI_CLAUDE_BASE_URL=https://api.openai-proxy.org/anthropic
DIFY_API_URL=http://localhost/v1
DIFY_API_KEY=dataset-mfvdiKvQ2l3NvxWm7RoYMN3c
PORT=3001
NODE_ENV=production
QUEUE_TYPE=pgboss
CACHE_TYPE=postgres
OSS_REGION=oss-cn-beijing
OSS_BUCKET=ai-clinical-research
OSS_ACCESS_KEY_ID=LTAI5tB2Dt3NdvBL3G7nYGv7
OSS_ACCESS_KEY_SECRET=1iSN9k39RkApP93QjUhC1DcPIeMG4V
OSS_ENDPOINT=oss-cn-beijing-internal.aliyuncs.com
PYTHON_SERVICE_URL=http://172.17.173.66:8000
LOG_LEVEL=info
  1. <EFBFBD>孵稬<EFBFBD>摰𠾼<EFBFBD>?

**<2A><EFBFBD>B嚗𡁻<E59A97>𣂷葵瘛餃<E7989B>**嚗<><E59A97><EFBFBD>𨀣鸌<F0A880A3>誩紡<E8AAA9><EFBFBD><E4B9A9>舐鍂嚗?

<EFBFBD>函㴓憓<EFBFBD><EFBFBD><EFBFBD>讛”<EFBFBD>潔葉<EFBFBD>𣂷葵瘛餃<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?11-Node.js<6A>𡒊垢-SAE<41>函蔡<E587BD>滨蔭皜<E894AD><E79A9C>.md 銝剔<E98A9D>銵冽聢<E586BD>?

3.4 <20>臬𢆡<E887AC>賭誘<E8B3AD>滨蔭

  1. <EFBFBD><EFBFBD>𣂼鍳<EFBFBD>典𦶢隞扎<EFBFBD>睲葉憛怠<EFBFBD>嚗?
node dist/server.js

**霂湔<E99C82>**嚗?

  • <EFBFBD>?銝漤<E98A9D>閬?npm start<EFBFBD><EFBFBD><EFBFBD>誩歇蝏讐<EFBFBD>霂穃末嚗?
  • <EFBFBD>?銝漤<E98A9D>閬?prisma migrate<EFBFBD><EFBFBD>桀歇撖澆<EFBFBD>嚗?
  • <EFBFBD>?銝漤<E98A9D>閬?prisma generate<EFBFBD><EFBFBD><EFBFBD>𤩺<EFBFBD>撱箸𧒄撌脩<EFBFBD><EFBFBD><EFBFBD>

3.5 <20>亙熒璉<E78692><E79289>仿<EFBFBD>蝵?

  1. <EFBFBD><EFBFBD><EFBFBD>𣂼鍳<EFBFBD><EFBFBD>摨瑟<EFBFBD><EFBFBD><EFBFBD>?
  2. <EFBFBD>滨蔭<EFBFBD><EFBFBD>㺭嚗?
<EFBFBD><EFBFBD>交䲮撘? HTTP霂瑟<E99C82>
霂瑟<EFBFBD>頝臬<EFBFBD>: /health
蝡臬藁: 3001
<EFBFBD><EFBFBD>撱嗉<EFBFBD>: 30蝘?
<EFBFBD><EFBFBD>仿𡢿<EFBFBD>? 10蝘?
<EFBFBD>𧒄<EFBFBD>園𡢿: 3蝘?
銝滚<EFBFBD>摨琿<EFBFBD><EFBFBD>? 3甈?
<EFBFBD>亙熒<EFBFBD><EFBFBD><EFBFBD>? 2甈?

銝箔<EFBFBD><EFBFBD><EFBFBD>憪见辣餈蠘挽蝵?0蝘𡜐<E89D98>

  • Node.js摨𠉛鍂<F0A0899B>臬𢆡<E887AC><F0A286A1>閬?0-15蝘?
  • Prisma Client<6E><EFBFBD><E598A5><EFBFBD>閬?-10蝘?
  • <EFBFBD>唳旿摨栞<EFBFBD><EFBFBD><EFBFBD>撱箇<EFBFBD><EFBFBD><EFBFBD>閬?蝘?
  • <EFBFBD><EFBFBD>雿䠷<EFBFBD>嚗屸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>摨瑟<EFBFBD><EFBFBD>亙仃韐?
  1. <EFBFBD>孵稬<EFBFBD>𣂷<EFBFBD><EFBFBD>甇乓<EFBFBD>?

<EFBFBD><EFBFBD> 蝚砍<E89D9A>甇伐<E79487>蝖株恕<E6A0AA>滨蔭撟園<E6929F>蝵?

4.1 璉<><E79289>仿<EFBFBD>蝵格<E89DB5>閬?

<EFBFBD>霈日△<EFBFBD><EFBFBD>隞𠉛<EFBFBD><EFBFBD><EFBFBD><EFBFBD>

  • <EFBFBD>𨅯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗䫤backend-service:v1.0`
  • <EFBFBD><EFBFBD><EFBFBD>滨蔭甇<EFBFBD>嚗?<3F>?GB
  • <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?1銝迎<E98A9D><E8BF8E>臭誑<E887AD>孵稬<E5ADB5><EFBFBD>霂行<E99C82>嚗?
  • <EFBFBD>亙熒璉<EFBFBD><EFBFBD>亥楝敺<EFBFBD><EFBFBD>/health
  • <EFBFBD>臬𢆡<EFBFBD>賭誘嚗䫤node dist/server.js`

4.2 撘<>憪钅<E686AA>蝵?

  1. <EFBFBD>孵稬<EFBFBD>𣂼<EFBFBD>撱箏<EFBFBD><EFBFBD><EFBFBD>?
  2. 蝑匧<EFBFBD><EFBFBD>函蔡嚗<EFBFBD>漲3-5<><35><EFBFBD>嚗?

**<2A>函蔡餈<E894A1><E9A488>**嚗?

1. <20><EFBFBD><E58CA7>𨅯<EFBFBD>嚗?<3F><><EFBFBD>嚗?
2. <20>𥕦遣摰孵膥摰硺<E691B0>嚗?<3F><><EFBFBD>嚗?
3. <20>臬𢆡摨𠉛鍂嚗?0蝘𡜐<E89D98>
4. <20><EFBFBD><E689AF>亙熒璉<E78692><E79289><EFBFBD>30蝘𡜐<E89D98>

<EFBFBD>?蝚砌<E89D9A>甇伐<E79487><E4BC90>函蔡撉諹<E69289>

5.1 璉<><E79289><EFBFBD><E4BA99>函𠶖<E587BD>?

  1. <EFBFBD>沒AE摨𠉛鍂<EFBFBD>𡑒”銝哨<EFBFBD><EFBFBD><EFBFBD> nodejs-backend-test
  2. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
    • <EFBFBD>?摰硺<E691B0><E7A1BA><EFBFBD><E59786><EFBFBD>**餈鞱<E9A488>銝?*嚗<><EFBFBD><EFBFBD>
    • <EFBFBD>?<3F>亙熒璉<E78692><E79289><EFBFBD>**<2A><EFBFBD>**嚗<><EFBFBD><EFBFBD>
    • <EFBFBD>?憒<><E68692><EFBFBD>曄內"撘<>虜"<22>?<3F><EFBFBD><EFBFBD>"嚗諹<E59A97><E8ABB9>亦洵<E4BAA6>剜郊<E5899C>埝䰻

5.2 <20><EFBFBD>摰墧𧒄<E5A2A7><EFBFBD>

  1. <EFBFBD>孵稬摨𠉛鍂<EFBFBD>滨妍嚗諹<EFBFBD><EFBFBD><EFBFBD><EFBFBD>刻祕<EFBFBD>?
  2. <EFBFBD>孵稬<EFBFBD>鞉𠯫敹𨰜<EFBFBD><EFBFBD><EFBFBD>𣂼<EFBFBD><EFBFBD>嗆𠯫敹𨰜<EFBFBD>?
  3. <EFBFBD>交𪄳隞乩<EFBFBD><EFBFBD>喲睸靽⊥<EFBFBD>嚗?

**<2A>?<3F>𣂼<EFBFBD><F0A382BC><EFBFBD>𠯫敹㛖內靘?*嚗?

============================================================
<0A><> AI銝游<E98A9D><E6B8B8>𠉛弦撟喳蝱 - <20>𡒊垢<F0A1928A>滚𦛚<E6BB9A>典鍳<E585B8><EFBFBD><E586BD><EFBFBD><EFBFBD>
============================================================
<0A><> <20>滚𦛚<E6BB9A><EFBFBD>: http://0.0.0.0:3001
<0A><> <20>亙熒璉<E78692><E79289>? http://0.0.0.0:3001/health
<0A>摱 API<50>亙藁: http://0.0.0.0:3001/api/v1
<0A><> 餈鞱<E9A488><E99EB1><EFBFBD>: production
============================================================

[INFO] Server listening at http://0.0.0.0:3001
[INFO] Database connected: ai_clinical_research
[INFO] Health check endpoint available: /health

**<2A>?憭梯揖<E6A2AF><E68F96>𠯫敹㛖內靘?*嚗?

[ERROR] Database connection failed: connect ETIMEDOUT
[ERROR] Prisma Client initialization failed
[ERROR] Application startup failed

<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>躰秤嚗諹<EFBFBD><EFBFBD>亦洵<EFBFBD>剜郊<EFBFBD>埝䰻<EFBFBD>?

5.3 <20><EFBFBD><E79195><EFBFBD><EFBFBD><EFBFBD><EFBFBD>

  1. <EFBFBD><EFBFBD><EFBFBD>刻祕<EFBFBD><EFBFBD>△嚗峕𪄳<EFBFBD><EFBFBD>𣂼抅<EFBFBD>砌縑<EFBFBD><EFBFBD>?
  2. 憭滚<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗峕聢撘讐掩隡潘<EFBFBD>http://172.17.x.x:3001
  3. 霈啣<EFBFBD><EFBFBD><EFBFBD>蝵脫<EFBFBD><EFBFBD>

**蝷箔<E89DB7><E7AE94><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**嚗?

http://172.17.173.88:3001

5.4 瘚贝<E7989A><E8B49D>亙熒璉<E78692><E79289>?

<EFBFBD>沒AE<EFBFBD><EFBFBD><EFBFBD>𨔽ebshell<EFBFBD>睲葉<EFBFBD><EFBFBD>嚗?

# 瘚贝<E7989A><E8B49D>亙熒璉<E78692><E79289>?
curl http://172.17.173.88:3001/health

# <20><><EFBFBD>餈𥪜<E9A488>嚗𠃍TTP 200嚗㚁<E59A97>
{
  "status": "ok",
  "timestamp": "2025-12-24T12:00:00.000Z",
  "database": "connected",
  "uptime": 123,
  "environment": "production"
}

5.5 瘚贝<E7989A><E8B49D>唳旿摨栞<E691A8><E6A09E>?

# 瘚贝<E7989A><E8B49D><EFBFBD>API嚗<49><E59A97><EFBFBD>𨀣<EFBFBD><F0A880A3>唳旿嚗?
curl http://172.17.173.88:3001/api/v1/users \
  -H "Authorization: Bearer test-token"

# <20>𡝗<EFBFBD>霂訫<E99C82>隞硋歇<E7A18B>丕PI蝡舐<E89DA1>

<EFBFBD>圲 蝚砍<E89D9A>甇伐<E79487><E4BC90><EFBFBD><EFBFBD><EFBFBD>埝䰻嚗<E4B0BB><EFBFBD><EFBFBD>

<EFBFBD><EFBFBD>1嚗𡁜<EFBFBD>摨瑟<EFBFBD><EFBFBD><EFBFBD><EFBFBD>游仃韐?

<EFBFBD><EFBFBD>𠶖嚗𡁜<EFBFBD><EFBFBD>函𠶖<EFBFBD><EFBFBD>遬蝷?撘<>虜"嚗<><E59A97>靘钅<E99D98><EFBFBD><E89D9C><EFBFBD>?

<EFBFBD>埝䰻甇仿炊嚗?

  1. **璉<><E79289>交𠯫敹𦯀葉<F0A6AF80><E89189><EFBFBD>霂臭縑<E887AD>?*嚗?

    # <20>沒AE摰墧𧒄<E5A2A7><EFBFBD>銝剜䰻<E5899C><EFBFBD><E69B89><EFBFBD>霂?
    [ERROR] ...
    
  2. **撣貉<E692A3><E8B289><EFBFBD><E7AC94>𡃏圾<F0A1838F>單䲮獢?*嚗?

<EFBFBD>躰秤靽⊥<EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
connect ETIMEDOUT <EFBFBD>唳旿摨栞<EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <EFBFBD><EFBFBD>充DS<EFBFBD><EFBFBD><EFBFBD>𨰻<EFBFBD><EFBFBD>PC<EFBFBD>滨蔭
authentication failed <EFBFBD>唳旿摨枏<EFBFBD><EFBFBD><EFBFBD><EFBFBD>霂? <EFBFBD><EFBFBD>主ATABASE_URL銝剔<EFBFBD><EFBFBD><EFBFBD>蝻𣇉<EFBFBD>
ENOENT: no such file or directory <EFBFBD>臬𢆡<EFBFBD>賭誘<EFBFBD>躰秤 蝖株恕<EFBFBD>臬𢆡<EFBFBD>賭誘銝?node dist/server.js
Cannot find module 'prisma' Prisma Client<6E><EFBFBD><E88AB0>? <EFBFBD>齿鰵<EFBFBD><EFBFBD><EFBFBD>𨅯<EFBFBD>
Port 3001 already in use 蝡臬藁<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>亙捆<EFBFBD>函垢<EFBFBD><EFBFBD><EFBFBD>蝵?
  1. **撉諹<E69289><E8ABB9>唳旿摨栞<E691A8><E6A09E>?*嚗?
    # <20>沒AE<41><45>ebshell銝剜<E98A9D>霂?
    curl -v telnet://pgm-2zex1m2y3r23hdn5.pg.rds.aliyuncs.com:5432
    

<EFBFBD><EFBFBD>2嚗𡁻<EFBFBD><EFBFBD>𤩺<EFBFBD><EFBFBD>硋仃韐?

<EFBFBD><EFBFBD>𠶖嚗𡁏𠯫敹埈遬蝷?Failed to pull image

**閫<><E996AB><EFBFBD><EFBFBD>**嚗?

  1. <EFBFBD><EFBFBD>丕CR霈方<EFBFBD><EFBFBD>滨蔭嚗?

    • Registry<EFBFBD><EFBFBD><EFBFBD>臬炏甇<EFBFBD>嚗ĀPC<EFBFBD><EFBFBD>嚗?
    • <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>行迤蝖?
  2. <EFBFBD>齿鰵<EFBFBD>滨蔭<EFBFBD>𨅯<EFBFBD>隞枏<EFBFBD>霈方<EFBFBD>嚗?

    • SAE摨𠉛鍂霂行<EFBFBD> <20>?<3F>滨蔭蝞∠<E89D9E> <20>?<3F>𨅯<EFBFBD>霈曄蔭
    • <EFBFBD>齿鰵颲枏<EFBFBD>霈方<EFBFBD>靽⊥<EFBFBD>

<EFBFBD><EFBFBD>3嚗𡁶㴓憓<EFBFBD><EFBFBD><EFBFBD>𤩺𧊋<EFBFBD><EFBFBD><EFBFBD>

<EFBFBD><EFBFBD>𠶖嚗𡁜<EFBFBD><EFBFBD><EFBFBD>銝箔<EFBFBD><EFBFBD><EFBFBD>銝滨泵

<EFBFBD>埝䰻甇仿炊嚗?

  1. <EFBFBD>沒AE摨𠉛鍂霂行<EFBFBD> <20>?<3F><EFBFBD><E887AC><EFBFBD>銝哨<E98A9D>蝖株恕<E6A0AA><E68195><EFBFBD><EFBFBD><E58CA7>誩歇<E8AAA9>滨蔭
  2. <EFBFBD>汾ebshell銝剜䰻<EFBFBD>讠㴓憓<EFBFBD><EFBFBD><EFBFBD>𧶏<EFBFBD>
    env | grep DATABASE_URL
    env | grep JWT_SECRET
    

<EFBFBD><EFBFBD>4嚗𡁜<EFBFBD>摮䀝<EFBFBD>頞喉<EFBFBD>OOM嚗?

<EFBFBD><EFBFBD>𠶖嚗𡁜<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>銝剖枂<EFBFBD>?Out of Memory

**閫<><E996AB><EFBFBD><EFBFBD>**嚗?

  1. <EFBFBD>沒AE摨𠉛鍂霂行<EFBFBD> <20>?<3F>箸𧋦<E7AEB8>滨蔭銝哨<E98A9D><EFBFBD><E692A0>摮䁅<E691AE><E48185>港蛹 2<EFBFBD>?GB
  2. <EFBFBD>齿鰵<EFBFBD>函蔡摨𠉛鍂

<EFBFBD><EFBFBD> 蝚砌<E89D9A>甇伐<E79487><E4BC90><EFBFBD><E689AF>烐綉

7.1 <20><EFBFBD><E4BAA6>烐綉<E78390><E7B689><EFBFBD>

<EFBFBD>沒AE摨𠉛鍂霂行<EFBFBD> <20>?<3F>烐綉銝哨<E98A9D><E593A8>單釣隞乩<E99A9E><E4B9A9><EFBFBD><EFBFBD>嚗?

CPU雿輻鍂<EFBFBD>? 摨?< 70%
<EFBFBD><EFBFBD><EFBFBD>雿輻鍂<EFBFBD>? 摨?< 80%
摰硺<EFBFBD><EFBFBD>亙熒<EFBFBD><EFBFBD>? 摨𥪯<E691A8><F0A5AAAF>?<3F>亙熒"
霂瑟<EFBFBD><EFBFBD><EFBFBD><EFBFBD>園𡢿: 摨?< 1000ms

7.2 霈曄蔭<E69B84>𡃏郎

撱箄悅<EFBFBD>滨蔭隞乩<EFBFBD><EFBFBD>𡃏郎嚗?

CPU雿輻鍂<EFBFBD>?> 80%: <EFBFBD><EFBFBD><EFBFBD><EFBFBD>霅?
<EFBFBD><EFBFBD><EFBFBD>雿輻鍂<EFBFBD>?> 90%: <EFBFBD><EFBFBD><EFBFBD><EFBFBD>霅?
摰硺<EFBFBD>銝滚<EFBFBD>摨? 蝡见朖<E8A781><EFBFBD><E785BE><EFBFBD>霅?

<EFBFBD><EFBFBD> 蝚砍<E89D9A>甇伐<E79487><E4BC90>湔鰵<E6B994>函蔡<E587BD><E894A1>

<EFBFBD>函蔡<EFBFBD>𣂼<EFBFBD><EFBFBD>𠬍<EFBFBD><EFBFBD>湔鰵隞乩<EFBFBD><EFBFBD><EFBFBD>﹝嚗?

8.1 <20>湔鰵<E6B994>函蔡餈𥕦漲<F0A595A6><EFBFBD>

蝻𤥁<EFBFBD> 00-<2D>函蔡餈𥕦漲<F0A595A6><EFBFBD>.md嚗?

| **Node.js<6A>𡒊垢** | <20>?撌脣<E6928C><E884A3>?| v1.0 | SAE | 2025-12-24 | ... |

8.2 霈啣<E99C88><E595A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>

<EFBFBD>?00-<2D>函蔡餈𥕦漲<F0A595A6><EFBFBD>.md 銝剜溶<E5899C>𩤃<EFBFBD>

| nodejs-backend-test | <20>?餈鞱<E9A488>銝?| 1<>?GB | 1 | 3001 | http://172.17.173.88:3001 | <20>𩤃<EFBFBD><EFBFBD><E99A9E>蝵𡢅<E89DB5> |

<EFBFBD><20>𡒊賒甇仿炊

Node.js<6A>𡒊垢<F0A1928A>函蔡<E587BD>𣂼<EFBFBD><F0A382BC>𠬍<EFBFBD>

1. <20>函蔡<E587BD>滨垢Nginx嚗<78><E59A97><EFBFBD>甇伐<E79487>

<EFBFBD>滨垢Nginx<EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝵奘ode.js<6A>𡒊垢<F0A1928A><E59EA2><EFBFBD>蝵穃𧑐<E7A983><F0A79190>嚗?

# <20>滨垢Nginx<6E><EFBFBD><E887AC><EFBFBD>
VITE_API_BASE_URL=http://172.17.173.88:3001

<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>07-<2D>滨垢Nginx-SAE<41>函蔡<E587BD><EFBFBD><E6BBA2><EFBFBD>.md

2. <20>券曎頝舀<E9A09D>霂?

摰峕㟲<EFBFBD><EFBFBD>窈瘙<EFBFBD>曎頝荔<EFBFBD>

<EFBFBD><EFBFBD>瘚讛<EFBFBD><EFBFBD>?
    <20>?
<0A>滨垢Nginx (SAE)
    <20>?
Node.js<6A>𡒊垢 (SAE)  <20>?http://172.17.173.88:3001
    <20>?
<0A><EFBFBD><E98EBF>?Python敺格<E695BA><E6A0BC>?(SAE)  <20>?http://172.17.173.66:8000
<0A><EFBFBD><E98EBF>?RDS PostgreSQL      <20>?pgm-2zex1m2y3r23hdn5.pg.rds.aliyuncs.com:5432
<0A><EFBFBD><E5A999>?<3F><EFBFBD>鈭䭲SS           <20>?ai-clinical-research.oss-cn-beijing-internal.aliyuncs.com

3. <20><EFBFBD>隡睃<E99AA1><EFBFBD><EFBFBD><EFBFBD>

<EFBFBD><EFBFBD>瘚贝<EFBFBD><EFBFBD><EFBFBD>餈鞱<EFBFBD>蝔喳<EFBFBD><EFBFBD>虾隞亥<EFBFBD><EFBFBD><EFBFBD>嚗?

  • **撘寞<E69298>找撓蝻?*嚗𡁻<E59A97>蝵株䌊<E6A0AA><EFBFBD>蝻拙捆閫<E68D86><E996AB>
  • <EFBFBD><EFBFBD><EFBFBD>嚗𡁏覔<EFBFBD><EFBFBD><EFBFBD>扳㺭<EFBFBD><EFBFBD><EFBFBD>媒PU/<2F><><EFBFBD>
  • **<2A><EFBFBD>隡睃<E99AA1>**嚗𡁻<E59A97>蝵格𠯫敹埈<E695B9><E59F88><EFBFBD><EFBFBD><EFBFBD>?

<EFBFBD>?<3F>函蔡摰峕<E691B0><EFBFBD><E79289><EFBFBD><E4BAA4>?

<EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝵脣<EFBFBD>嚗諹窈蝖株恕嚗?

  • SAE摨𠉛鍂<EFBFBD><EFBFBD><EFBFBD>蛹"餈鞱<E9A488>銝?
  • <EFBFBD>亙熒璉<EFBFBD><EFBFBD>交遬蝷?<3F><EFBFBD>"
  • 摰墧𧒄<EFBFBD><EFBFBD><EFBFBD>𪊲RROR蝥批<EFBFBD><EFBFBD>躰秤
  • <EFBFBD>亙熒璉<EFBFBD><EFBFBD>交𦻖<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?00
  • <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>撌脰扇敶?
  • <EFBFBD>函蔡<EFBFBD><EFBFBD>﹝撌脫凒<EFBFBD>?
  • Python敺格<EFBFBD><EFBFBD>虾隞交迤撣貉<EFBFBD><EFBFBD>?
  • <EFBFBD>唳旿摨栞<EFBFBD><EFBFBD>交迤撣?
  • OSS<EFBFBD><EFBFBD>辣銝𠹺<EFBFBD>/銝贝蝸甇<E89DB8>

<EFBFBD><EFBFBD> <20><EFBFBD>銝𤾸葬<F0A4BEB8>?

撣貉<EFBFBD><EFBFBD><EFBFBD>

  1. *Q: 憒<><E68692><EFBFBD>滚鍳摨𠉛鍂嚗?

    • A: SAE摨𠉛鍂霂行<E99C82> <20>?<3F>箸𧋦靽⊥<E99DBD> <20>?<3F>孵稬<E5ADB5><EFBFBD><E99EBE><EFBFBD>?
  2. *Q: 憒<><E68692><EFBFBD><EFBFBD>摰峕㟲<E5B395><EFBFBD>嚗?

    • A: SAE摨𠉛鍂霂行<E99C82> <20>?<3F><EFBFBD> <20>?<3F><><EFBFBD><EFBFBD><EFBFBD>𣈲<EFBFBD><F0A388B2>𧒄<EFBFBD><EFBFBD><E6B8B2>湔䰻霂<E99C82>
  3. *Q: 憒<><E68692><EFBFBD><EFBFBD><E5A2A7><EFBFBD><E594AC><EFBFBD><E6BBA8><EFBFBD>𧋦嚗?

    • A: SAE摨𠉛鍂霂行<E99C82> <20>?<3F><>𧋦蝞∠<E89D9E> <20>?<3F>㗇𥋘<E39787><F0A58B98><EFBFBD><E89FAE>𧋦 <20>?<3F><EFBFBD>
  4. *Q: 憒<><E68692><EFBFBD>拙捆摰硺<E691B0>嚗?

    • A: SAE摨𠉛鍂霂行<E99C82> <20>?<3F>箸𧋦<E7AEB8>滨蔭 <20>?靽格㺿摰硺<E691B0><E7A1BA>?閫<><20>?蝖株恕<E6A0AA>䀹凒

<EFBFBD>𠉛頂<EFBFBD><EFBFBD>

  • **<2A><><EFBFBD>舀𣈲<E88880>?*嚗𡁜<E59A97><F0A1819C>穃𣪧<E7A983>?
  • **<2A><EFBFBD>鈭穃極<E7A983>?*嚗冴ttps://workorder.console.aliyun.com/

<EFBFBD><EFBFBD><EFBFBD>𥕦遣<EFBFBD>園𡢿嚗?025-12-24
**<2A><><EFBFBD>擧凒<E693A7>?*嚗?025-12-24
**蝏湔擪鈭箏<E988AD>**嚗朞<E59A97>蝏游𣪧<E6B8B8>?


<EFBFBD><EFBFBD> *蟡嗪<EFBFBD>蝵脤◇<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗諹窈<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>𨀣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>𠉛頂<EFBFBD><EFBFBD><EFBFBD>舀𣈲<EFBFBD><EFBFBD><EFBFBD>?