---
title: ECShopX · 技术栈与部署方式
description: 两代技术栈全景：PHP Lumen 版（开源初版）与 ECShopX-Java 5.1.0（Java 17 / Spring Boot 3，模块化单体），含压测口径、部署路径与客户 IT 核对清单
updated: 2026-10-10
tags: [产品, ECShopX, 技术栈, 部署, Java, 性能]
related: [products/ecshopx/index.md, products/ecshopx/ai.md, products/search/index.md, company/trust-security.md]
sources: [sources/_index.md, sources/knowledge-base/02-retail-private-domain/ecshopx-opensource/5机集群压测报告.md, sources/knowledge-base/02-retail-private-domain/ecshopx-opensource/2026-09-27-ECShopX技术栈清单.md]
---

# ECShopX：技术栈与部署方式

ECShopX 存在两代技术栈：**PHP 版**（2026-01 无加密开源的初版）与 **Java 版（ECShopX-Java 5.1.0）**。本文分别给出技术栈、性能口径与部署方式，供客户 IT 部门核对与方案引用。

## 一、PHP 版技术栈（开源初版）

**以 PHP Lumen 为后端核心，以 Vue / Taro 承接多端体验**，形成前后端分离、API 标准化、数据层可扩展的企业级技术体系：

| 层 | 技术 |
|---|---|
| 后端 | PHP 7.2 + Lumen 框架，Dingo API（接口管理），Doctrine ORM（大型项目数据模型） |
| 前端 | HTML5 / CSS3 / ES6，VueJS、Taro、Wepy（小程序多端） |
| 数据库 | MySQL / PolarDB |
| 队列 / 缓存 | RabbitMQ / Redis |
| 搜索 | Elasticsearch |
| 日志监控 | ELK / Sentry |
| 持续集成 | GitLab CI |
| CDN / OSS | 标准对象存储与 CDN 接入 |

## 二、Java 版技术栈（ECShopX-Java 5.1.0）

> 版本号均提取自仓库真实构建文件（pom.xml / package.json / Dockerfile / docker-compose）；个别第三方模块用途按代码结构推断，原文已标注「推断」。分析对象为官方开源仓库 4 个（main / java-main 分支）：ECShopX-Java（后端，9064 个 Java 文件、55+ Maven 模块）、Mobile（小程序/H5 前端）、Admin（管理后台前端）、web（Web 商城前端）。

### 架构总览

| 层 | 形态 | 说明 |
|---|---|---|
| 后端 | **模块化单体**（Modular Monolith） | 55+ 业务模块各自独立为 Maven Bundle，`ecshopx-bootstrap` 作为 Spring Boot 启动入口聚合为单进程（端口 18080）；**非微服务**：无注册中心、无 RPC 框架 |
| C 端前端 | Taro 4.2 + React 18 | 一套代码编译到微信 / 支付宝 / 抖音 / 百度 / QQ / 京东小程序 + H5 |
| B 端前端 | Vue 2.6 + Element UI | 管理后台，内置 qiankun 2.3.5 微前端能力 |
| PC 商城前端 | Nuxt 4（Vue 3 SSR） | 服务端渲染，SEO 友好；TailwindCSS 4 + TypeScript 5.3 |
| 数据 / 缓存 / 队列 | MySQL 8.0（Flyway 迁移）· Redis 7（Lettuce）· RabbitMQ · XXL-Job 2.5.0 | 无配置中心、无注册中心（properties + 环境变量） |
| 安全 | Spring Security + JJWT 0.12.6 + BouncyCastle | |
| 部署 | Docker / docker-compose | 运行时镜像 Temurin 17 + Node 20 + OpenResty 一体化；**未提供 K8s 清单** |

### 版本速查

```
后端:    Java 17 (Temurin) · Spring Boot 3.5.12 · Undertow · MyBatis-Plus 3.5.16 · Flyway
中间件:  MySQL 8.0 · Redis 7 (Lettuce) · RabbitMQ · XXL-Job 2.5.0
安全:    Spring Security · JJWT 0.12.6 · BouncyCastle
存储SDK: 阿里云OSS · 腾讯COS · 七牛 · S3兼容
支付SDK: 微信支付(WxJava 4.7.6) · 支付宝(4.39.134) · 汇付Adapay/斗拱BsPay(dg-java-sdk 3.0.26) · 银联商务
C端:    Taro 4.2.0 + React 18.2.0 + Redux Toolkit · Node 20.19.0 · 多端(微信/支付宝/抖音/百度/QQ/京东/H5)
B端:    Vue 2.6.11 + Element UI 2.15.12 + Vuex 3 + qiankun 2.3.5 · @vue/cli 5
PC端:   Nuxt 4 + Vue 3.4 + Pinia + TailwindCSS 4 + TypeScript 5.3 · pnpm 10
部署:    Docker/docker-compose · OpenResty · Maven 3.9 · 运行时镜像(Java17+Node20+OpenResty)
无:     注册中心 · 配置中心 · Elasticsearch · Kubernetes清单
```

### 与 PHP 版的关键差异

| 维度 | PHP 版（开源初版） | Java 版 5.1.0 |
|---|---|---|
| 后端 | PHP 7.2 + Lumen | Java 17 + Spring Boot 3.5.12（模块化单体） |
| 检索 | Elasticsearch | 基于 MySQL（无 ES 依赖） |
| C 端前端 | VueJS / Taro / Wepy | Taro 4 + React 18（Redux Toolkit） |
| B 端前端 | VueJS | Vue 2 + Element UI + qiankun 微前端 |
| PC 端 | — | Nuxt 4 + Vue 3 SSR（新增） |
| ORM | Doctrine ORM | MyBatis-Plus 3.5.16 |

> 检索差异说明：Java 版原生无 ES，检索基于 MySQL。如需智能搜索增强（纠错、同义词、四维联想、图搜、个性化），可通过 **ShopEx Search** 方案补齐，见 [`products/search/index.md`](/products/search/index.md)。

### 第三方集成亮点（按后端模块）

- **支付**：微信支付（WxJava 4.7.6）、支付宝（4.39.134）、汇付（Adapay / 斗拱 BsPay / HPay）、银联商务
- **ERP 对接**：旺店通、聚水潭、OME，Port 接口模式可扩展新 ERP（**无鼎捷**，如需按适配器模式新增开发）
- **存储**：阿里云 OSS / 腾讯云 COS / 七牛 / S3 兼容（含 MinIO）四选一
- **其他**：企业微信、阿里云短信、酷家乐（3D 设计）、数云 CRM、有数埋点、EChat/美洽客服（推断项以原文标注为准）
- ⚠️ `dg-java-sdk`（com.huifu.bspay.sdk）为**汇付斗拱支付 SDK**，与鼎捷（Digiwin）ERP 无关，核对时勿混淆

### 客户 IT 核对要点（精选）

原文提供 20 项逐条核对清单，最常卡住的点：JDK 17 发行版认可（Temurin / 毕昇 / 龙井）、MySQL 8.0 与 Redis 7 的托管标准、XXL-Job 独立 Admin 部署许可、单体架构接受度、配置中心 / SSO / APM 对接改造量、K8s 还是虚机 + Docker、出网白名单（支付 / 短信 / 云服务域名）、数据合规（会员注销为物理删除，等保/个保法场景需确认是否改软删除）。

## 三、性能与稳定性（PHP 版，附测试条件，保留原始口径）

以下数字来自商派官方压测报告与产品介绍页，**引用时必须连同条件与口径，不得作为普遍承诺**：

| 指标 | 数字 | 原始口径与测试条件 | 出处 |
|---|---|---|---|
| 5 机集群压力设置 | **并发数设置为 2000**（并发连接/用户口径，非每秒吞吐量） | 压测报告原文为「压力并发数设置为 2000 并发」；web1/web2 均为 8核/16G/100G SSD，另配 8核/16G 压测机（tsung）；报告未给出可靠的每秒吞吐口径 | 《5机集群压测报告》 |
| 单机 UV 并发 | 600/秒 | 单机 4核/8G 标准硬盘（Web/Worker/Scheduler/MySQL/Redis 同机），报告口径为每秒 UV 并发 | 《单机压测报告（英文版）》 |
| 单机订单处理 | **60 单/秒 或 27 单/秒（两个口径并存，待与商派确认）** | 同上 4核/8G；60 来自压测报告原文，27 来自产品介绍页 page04 | 压测报告 vs 产品介绍页 |
| API 响应时间 | 2 秒以内 | 出处为产品介绍页，未见独立测试报告；统计口径未知 | 《ECShopX 技术栈与部署》page04 |

> ⚠️ 两个提醒：① 单机订单速率在压测报告（60 单/秒）与产品介绍页（27 单/秒）中不一致，向客户引用前请与商派确认；② 「2000」是并发设置口径，不能转述为「每秒处理 2000 单/笔」，吞吐量数字需另向商派索取。

高可用手段：集群部署、自动扩容、事件异步、多级缓存。

### 客户实战压测

除实验室基准压测外，商派为多个头部品牌客户提供大促前专项性能压测服务，场景覆盖品牌小程序商城、品牌特卖、官网内购等，测试范围包括收单、下单、支付回调与库存链路，交付标准化压测报告。具体客户与数字因保密约定不在本站公开，交流时提供。

## 四、部署路径

### PHP 版三种部署路径

| 模式 | 适用 |
|---|---|
| **标准部署** | 物理/虚拟机 + Nginx + PHP-FPM + MySQL + Redis + Elasticsearch + Supervisor；中小规模业务 |
| **容器化** | Docker / Docker Compose，开发测试环境快速搭建 |
| **云原生 K8s** | 中大型业务与高峰流量：HPA 自动扩容、Helm 交付、GitLab CI 自动化 |

部署角色可按 **Web、Worker、Scheduler、数据服务、负载均衡** 拆分。

### Java 版部署形态

- docker-compose 编排：dev 全量（MySQL/Redis/XXL-Job/app）+ docker-lite 生产精简编排
- 一体化运行时镜像 `ecshopx-java:17-node20-openresty`：Java API + Nginx 路由 + Nuxt SSR 同容器，OpenResty 按 Host 路由 admin / h5 / pc
- 数据库初始化：全量 SQL + XXL-Job 库 SQL + Flyway 增量
- 离线环境：官方提供 CDN gzip 镜像包（docker load 导入）
- 仓库未含 K8s 清单 / Helm 与 CI/CD 流水线定义（前端三仓库有 husky + commitlint + commitizen 规范）

---

**信息来源**：[`sources/knowledge-base/02-retail-private-domain/ecshopx-opensource/2026-09-27-ECShopX技术栈清单.md`](/sources/knowledge-base/02-retail-private-domain/ecshopx-opensource/2026-09-27-ecshopx-ee1c83dc.md)（Java 版，基于真实构建文件）、[sources/case-trust/TechStacksDeploy/ECX/](/sources/_index.md#cat-服务案例与信任)（PHP 版技术栈、性能稳定性、部署方式）、[`sources/knowledge-base/02-retail-private-domain/ecshopx-opensource/5机集群压测报告.md`](/sources/knowledge-base/02-retail-private-domain/ecshopx-opensource/5-fe7afc41.md)
