Rappi业务架构
Rappi业务架构图
Rappi类似国内的美团,主要业务有四大块:
mindmap
root((🚀 Rappi))
(🛵 即时配送)
[🍽️ 餐厅外卖]
[🛒 杂货店配送]
[📦 快递服务]
[💊 药品配送]
(💰 金融服务)
[💳 RappiPay支付]
[💵 信用服务]
[🔄 转账服务]
[🛡️ 保险服务]
(🛍️ 电子商务)
[🏪 RappiMarket]
[⚡ RappiTurbo闪购]
[👑 Rappi Prime会员]
[🏬 线上商城]
(🌈 生活服务)
[🎮 娱乐服务]
[✈️ 旅游服务]
[🚗 出行服务]
[🏠 家政服务]
-
即时配送 🛵
- 餐厅外卖 🍽️
- 杂货店配送 🛒
- 快递服务 📦
- 药品配送 💊
-
金融服务 💰
- RappiPay支付 💳
- 信用服务 💵
- 转账服务 🔄
- 保险服务 🛡️
-
电子商务 🛍️
- RappiMarket 🏪
- RappiTurbo闪购 ⚡
- Rappi Prime会员 👑
- 线上商城 🏬
-
生活服务 🌈
- 娱乐服务 🎮
- 旅游服务 ✈️
- 出行服务 🚗
- 家政服务 🏠
Rappi 系统架构图
包含技术栈和系统组件的 Rappi 系统架构图。
graph TB
%% 客户端层
Client["📱 客户端应用"]
Client --> AndroidApp["🤖 Android App"]
Client --> iOSApp["🍎 iOS App"]
Client --> WebApp["🌐 Web App"]
%% API网关层
AndroidApp & iOSApp & WebApp --> Gateway["🔐 API Gateway<br/>(Kong)"]
%% 负载均衡
Gateway --> LoadBalancer["⚖️ 负载均衡<br/>(AWS ELB)"]
%% 微服务集群
LoadBalancer --> Services["🔄 微服务集群"]
subgraph 核心服务-361way.com
Services --> OrderService["📦 订单服务<br/>(Spring Boot)"]
Services --> UserService["👤 用户服务<br/>(Node.js)"]
Services --> PaymentService["💳 支付服务<br/>(Go)"]
Services --> DeliveryService["🛵 配送服务<br/>(Python)"]
Services --> NotificationService["📨 通知服务<br/>(Node.js)"]
end
%% 消息队列
OrderService & PaymentService & DeliveryService --> MessageQueue["📬 消息队列<br/>(Kafka)"]
%% 缓存层
Services --> Cache["⚡ 缓存层<br/>(Redis)"]
%% 数据层(上方)
subgraph DataLayer["数据层"]
MainDB["💾 主数据库<br/>(PostgreSQL)"]
SearchDB["🔍 搜索引擎<br/>(Elasticsearch)"]
Analytics["📊 分析数据库<br/>(Snowflake)"]
end
Services --> DataLayer
%% 运维监控(下方)
subgraph MonitoringLayer["运维监控层"]
Monitoring["📈 监控系统<br/>(Prometheus)"]
Logging["📝 日志系统<br/>(ELK Stack)"]
Tracing["🔍 链路追踪<br/>(Jaeger)"]
end
Services --> MonitoringLayer
%% 样式定义
classDef client fill:#e4f0fb,stroke:#333,stroke-width:1px
classDef gateway fill:#ffefef,stroke:#333,stroke-width:1px
classDef service fill:#e6ffe6,stroke:#333,stroke-width:1px
classDef database fill:#fff0e6,stroke:#333,stroke-width:1px
classDef monitoring fill:#f0e6ff,stroke:#333,stroke-width:1px
classDef cloud fill:#e6f9ff,stroke:#333,stroke-width:1px
%% 应用样式
class Client,AndroidApp,iOSApp,WebApp client
class Gateway,LoadBalancer gateway
class OrderService,UserService,PaymentService,DeliveryService,NotificationService service
class MainDB,SearchDB,Analytics,Cache database
class Monitoring,Logging,Tracing monitoring
这个系统架构图展示了 Rappi 的主要技术组件:
-
客户端层 📱
- Android App 🤖
- iOS App 🍎
- Web App 🌐
-
API 网关层 🔐
- Kong API Gateway
- AWS ELB 负载均衡器
-
微服务集群 🔄
- 订单服务 (Spring Boot) 📦
- 用户服务 (Node.js) 👤
- 支付服务 (Go) 💳
- 配送服务 (Python) 🛵
- 通知服务 (Node.js) 📨
-
中间件
- Kafka 消息队列 📬
- Redis 缓存 ⚡
-
数据层
- PostgreSQL 主数据库 💾
- Elasticsearch 搜索引擎 🔍
- Snowflake 分析数据库 📊
-
运维监控
- Prometheus 监控 📈
- ELK Stack 日志系统 📝
- Jaeger 链路追踪 🔍
-
云服务基础设施 ☁️
- AWS EC2 💻
- AWS S3 📂
- AWS Lambda λ
flowchart TB
%% 客户端层
Client["📱 客户端应用"]
Client --> AndroidApp["🤖 Android App"]
Client --> iOSApp["🍎 iOS App"]
Client --> WebApp["🌐 Web App"]
%% API网关层
AndroidApp & iOSApp & WebApp --> Gateway["🔐 API Gateway<br/>(Kong)"]
%% 负载均衡
Gateway --> LoadBalancer["⚖️ 负载均衡<br/>(AWS ELB)"]
%% 微服务集群
LoadBalancer --> Services["🔄 微服务集群"]
%% 核心服务
Services --> OrderService["📦 订单服务<br/>(Spring Boot)"]
Services --> UserService["👤 用户服务<br/>(Node.js)"]
Services --> PaymentService["💳 支付服务<br/>(Go)"]
Services --> DeliveryService["🛵 配送服务<br/>(Python)"]
Services --> NotificationService["📨 通知服务<br/>(Node.js)"]
%% 消息队列
OrderService & PaymentService & DeliveryService --> MessageQueue["📬 消息队列<br/>(Kafka)"]
%% 缓存层
Services --> Cache["⚡ 缓存层<br/>(Redis)"]
%% 数据层(上方)
subgraph DataLayer["数据层"]
MainDB["💾 主数据库<br/>(PostgreSQL)"]
SearchDB["🔍 搜索引擎<br/>(Elasticsearch)"]
Analytics["📊 分析数据库<br/>(Snowflake)"]
end
Services --> DataLayer
%% 运维监控(下方)
subgraph MonitoringLayer["运维监控层"]
Monitoring["📈 监控系统<br/>(Prometheus)"]
Logging["📝 日志系统<br/>(ELK Stack)"]
Tracing["🔍 链路追踪<br/>(Jaeger)"]
end
Services --> MonitoringLayer
%% 样式定义
classDef client fill:#e4f0fb,stroke:#333,stroke-width:1px
classDef gateway fill:#ffefef,stroke:#333,stroke-width:1px
classDef service fill:#e6ffe6,stroke:#333,stroke-width:1px
classDef database fill:#fff0e6,stroke:#333,stroke-width:1px
classDef monitoring fill:#f0e6ff,stroke:#333,stroke-width:1px
classDef layer fill:#f5f5f5,stroke:#333,stroke-width:2px
%% 应用样式
class Client,AndroidApp,iOSApp,WebApp client
class Gateway,LoadBalancer gateway
class OrderService,UserService,PaymentService,DeliveryService,NotificationService service
class MainDB,SearchDB,Analytics,Cache database
class Monitoring,Logging,Tracing monitoring
class DataLayer,MonitoringLayer layer
flowchart LR
%% 云服务基础设施
AWS["☁️ AWS云服务"]
AWS --> EC2["💻 EC2"]
AWS --> S3["📂 S3"]
AWS --> Lambda["λ Lambda"]
AWS云服务
flowchart TD
A[User 👥] -->|Request| B[CloudFront CDN 🌍]
B -->|Fetch| C[S3 Storage 📁]
C -->|Response| B
B -->|Deliver| A
subgraph Origin_Group
D[EC2 Instance 💻]
E[Elastic Load Balancer 🔄]
E -->|Route| D
B -->|Failover| E
end
F[Lambda@Edge 💡] -->|Process| B
G[Route 53 DNS 🌐] -->|Resolve| B
Origin_Group
子图来表示EC2实例和Elastic Load Balancer之间的关系,以及CloudFront CDN如何通过它们进行故障转移。
捐赠本站(Donate)
如您感觉文章有用,可扫码捐赠本站!(If the article useful, you can scan the QR code to donate))