跳转至

Rappi业务架构

Rappi业务架构图

Rappi类似国内的美团,主要业务有四大块:

mindmap
  root((🚀 Rappi))
    (🛵 即时配送)
      [🍽️ 餐厅外卖]
      [🛒 杂货店配送]
      [📦 快递服务]
      [💊 药品配送]
    (💰 金融服务)
      [💳 RappiPay支付]
      [💵 信用服务]
      [🔄 转账服务]
      [🛡️ 保险服务]
    (🛍️ 电子商务)
      [🏪 RappiMarket]
      [⚡ RappiTurbo闪购]
      [👑 Rappi Prime会员]
      [🏬 线上商城]
    (🌈 生活服务)
      [🎮 娱乐服务]
      [✈️ 旅游服务]
      [🚗 出行服务]
      [🏠 家政服务]
  1. 即时配送 🛵

    • 餐厅外卖 🍽️
    • 杂货店配送 🛒
    • 快递服务 📦
    • 药品配送 💊
  2. 金融服务 💰

    • RappiPay支付 💳
    • 信用服务 💵
    • 转账服务 🔄
    • 保险服务 🛡️
  3. 电子商务 🛍️

    • RappiMarket 🏪
    • RappiTurbo闪购 ⚡
    • Rappi Prime会员 👑
    • 线上商城 🏬
  4. 生活服务 🌈

    • 娱乐服务 🎮
    • 旅游服务 ✈️
    • 出行服务 🚗
    • 家政服务 🏠

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 的主要技术组件:

  1. 客户端层 📱

    • Android App 🤖
    • iOS App 🍎
    • Web App 🌐
  2. API 网关层 🔐

    • Kong API Gateway
    • AWS ELB 负载均衡器
  3. 微服务集群 🔄

    • 订单服务 (Spring Boot) 📦
    • 用户服务 (Node.js) 👤
    • 支付服务 (Go) 💳
    • 配送服务 (Python) 🛵
    • 通知服务 (Node.js) 📨
  4. 中间件

    • Kafka 消息队列 📬
    • Redis 缓存 ⚡
  5. 数据层

    • PostgreSQL 主数据库 💾
    • Elasticsearch 搜索引擎 🔍
    • Snowflake 分析数据库 📊
  6. 运维监控

    • Prometheus 监控 📈
    • ELK Stack 日志系统 📝
    • Jaeger 链路追踪 🔍
  7. 云服务基础设施 ☁️

    • 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)

weixin_pay
如您感觉文章有用,可扫码捐赠本站!(If the article useful, you can scan the QR code to donate))