MicrocosmWorks创新与构建数字宇宙
关于我们联系我们
MicrocosmWorks创新与构建数字宇宙

提供重要的IT解决方案。我们热衷于技术、安全,并通过可靠、创新的IT基础设施帮助企业成长。

[email protected]
+91 7011868196
New Delhi, India

AI增长中心

AI中心初创创新企业加速器

解决方案

所有解决方案健康与健身应用AI视频平台AI代理开发

资源

见解行业指南用例蓝图架构模式案例研究

公司

关于我们联系我们我们的工作

服务

数字咨询云基础设施SaaS 开发AI 开发视频技术
ERP 开发Zoho 定制Odoo 开发Salesforce 集成定制 CRM 开发
QuickBooks 集成物联网解决方案区块链开发
网络安全咨询IT 支持 - L3

© 2026 MicrocosmWorks. 保留所有权利。

隐私政策服务条款
返回洞察
Cloud Solutions

利用微服务扩展数字健康平台

将健康平台拆分为微服务,以独立扩展团队、服务和负载。

Mayank Joshi.webpMayank Chandra Joshi
•
August 10, 2026
•
更新于 August 28, 2026
•
4 min read
ChatGPT Image Aug 10, 2026, 01_41_21 PM (1).webp
4 min read

随着健康与营养业务的不断扩张,单一的后端系统已无法满足需求。AI聊天机器人流量、大量的可穿戴设备数据摄取以及日常的API请求都在争夺相同的资源——这使得系统难以扩展且部署风险高。我们将其重新架构为专注于特定功能、可独立部署的服务,并通过单一API网关在AWS上进行编排。

 

面临的挑战

  • 一个代码库处理所有任务。一个工作流包括用户管理、AI chatbot推理、食谱和健康数据分析。任何一个领域的激增都会降低整个平台的性能,并且每次更改都意味着需要重新部署整个系统。
  • 极度异构的资源配置文件。LLM驱动的聊天机器人请求对CPU和内存要求高且具有突发性;可穿戴设备数据摄取是写入密集型的且连续;核心CRUD APIs则轻量且稳定。为这三者配置一个服务器意味着某些工作负载会过度付费,而另一些则资源不足。
  • 独立的扩展和部署。团队需要在不影响核心API的情况下扩展AI工作负载,并且在发布某个领域的更改时不会危及其他领域。
  • 单一、安全的入口点。尽管有多个后端服务,客户端(移动、网络、管理)需要一个统一、经过身份验证的接口进行通信——不会将内部服务拓扑暴露给外部。

     

我们的解决方案

我们将平台拆分为三个专注于特定功能的NestJS服务,它们位于AWS Application Load Balancer之后,主服务器充当API gateway和编排器。它负责身份验证和核心领域,并通过经过身份验证的REST将专业工作委托给聊天机器人和健康微服务。共享数据和消息层使服务保持松散耦合但一致。

microservices-architecture.webp


架构

  • 主服务器 (NestJS) — API gateway和编排器:负责身份验证、用户、目标、食谱、日程安排和通知。所有客户端都有一个单一的公共入口点。
  • 聊天机器人微服务 (NestJS) — 由Azure OpenAI (GPT-4o)通过LangChain/LangGraph提供支持的AI对话服务,并使用Elasticsearch支持的RAG进行食谱和知识检索。
  • 健康微服务 (NestJS) — 摄取并聚合可穿戴设备和手动健康数据 (Apple Health, Health Connect),并提供分析服务。
  • AWS ECS Fargate运行这三个容器化服务,每个服务都有自己的CPU/内存配置和扩展策略。
  • Application Load Balancer终止HTTPS连接并将流量路径路由到正确的服务。
  • 共享数据层 — MongoDB Atlas (主存储), Redis (缓存/会话), Elasticsearch (搜索), ActiveMQ (异步通知交付)。
  • CI/CD — Docker多阶段构建推送到Amazon ECR,作为滚动更新部署到ECS。

     

主要特点

1. 编排器模式。主服务器是唯一暴露给客户端的服务。它对每个请求进行身份验证,然后进行内部服务到服务调用——这样后端拓扑保持私有,客户端集成保持简单。

2. 经过身份验证的服务间调用。服务间通信是通过共享HTTP客户端实现的REST,使用每个服务的bearer API密钥进行保护:   

// 主服务器将AI请求委托给聊天机器人微服务

const reply = await this.microserviceClient.post(

  this.chatbotApiKey,                    // 每个服务的bearer密钥

  `${this.chatbotUrl}/chat`,

  { user, question, sessionId, attachment },

);

 

3. 按工作负载独立扩展。每个服务都是一个独立的Fargate任务定义,拥有自己的规模配置——内存密集型聊天机器人服务可以独立于轻量级核心API进行扩展,因此AI流量高峰永远不会导致日常请求饥饿。

4. 规模适当且内置弹性的AI服务。聊天机器人服务在多个Azure OpenAI密钥之间轮换,在达到速率限制或发生错误时自动故障转移——确保AI功能在高负载下保持响应。

5. 通过异步消息传递实现通知。由于ActiveMQ延迟队列将基于时间的提醒和通知与请求流分离,通知传递永远不会阻碍或减慢核心API流量。

6. 可重复、隔离的部署。从ECR到ECS,每个服务都作为独立的Docker镜像发布。对健康服务的修改仅重新部署健康服务——通过带有健康检查的滚动更新,实现快速、低风险的发布。

7. 一个一致的客户端契约。移动端 (React Native) 和管理仪表盘都与单一的负载均衡、HTTPS入口点通信——内部拆分为微服务对它们是不可见的。

 

结果

  • 如今,AI chatbots、健康数据和核心APIs的工作负载可以独立扩展;没有一个任务会影响其他任务的性能。
  • 每个服务都独立部署,将高风险的全平台发布转变为快速、隔离的更新。
  • 每个服务的计算资源都经过适当调整,避免了“一刀切”服务器的资源过度配置问题。
  • 一个单一、安全、负载均衡的入口点使客户端集成保持简单,同时后端保持私有和模块化。



技术栈

NestJS · TypeScript · Node.js 20 · Azure OpenAI (GPT-4o) · LangChain · MongoDB Atlas · Redis · Elasticsearch · ActiveMQ · AWS ECS Fargate · Application Load Balancer · Amazon ECR · Docker


其他博客

1. 我们如何使用AWS ECS扩展视频处理工作负载

2. 我们如何使用AWS ECR管理和部署容器镜像

3. 我们如何将AWS EC2用于高性能视频工作负载


 

微服务可扩展性健康科技后端
Mayank Joshi.webp

关于作者

Mayank Chandra Joshi

AI & Cloud Solutions Expert at MicrocosmWorks

Building innovative AI-powered solutions and helping businesses transform through cutting-edge technology.

想了解更多?

联系我们,讨论如何帮助您的业务实施这些解决方案。

联系我们

常见问题

Microservices separated the platform into independently scalable services for core APIs, AI chatbot workloads, and health-data processing, preventing one workload from affecting the performance of others.

AWS ECS Fargate runs each microservice as an independently managed container, allowing CPU, memory, and scaling policies to be configured based on each service's workload.

An API gateway provides a single secure entry point for clients while handling authentication and routing requests to the appropriate backend microservice without exposing internal service architecture.

Each service can be built, tested, and deployed independently, allowing changes to one microservice without redeploying or risking the entire application.

Independent scaling allows resource-intensive workloads such as AI chatbot requests and wearable-data processing to scale separately from lightweight API traffic, preventing resource contention and improving overall reliability.

Comments (0)

Share your thoughts and join the conversation

Leave a Comment

Your email will not be published

No comments yet

Be the first to share your thoughts!