0235624 4e6f13a1d2 xin 2 месяцев назад
..
.github cef1d3e184 1 2 месяцев назад
.husky cef1d3e184 1 2 месяцев назад
Docs cef1d3e184 1 2 месяцев назад
docker cef1d3e184 1 2 месяцев назад
src 4e6f13a1d2 xin 2 месяцев назад
tests 4e6f13a1d2 xin 2 месяцев назад
.dockerignore cef1d3e184 1 2 месяцев назад
.env.example cef1d3e184 1 2 месяцев назад
.env.test cef1d3e184 1 2 месяцев назад
.eslintrc.json cef1d3e184 1 2 месяцев назад
.gitignore cef1d3e184 1 2 месяцев назад
.prettierrc.json cef1d3e184 1 2 месяцев назад
Dockerfile cef1d3e184 1 2 месяцев назад
Dockerfile.debian cef1d3e184 1 2 месяцев назад
Dockerfile.parse cef1d3e184 1 2 месяцев назад
Dockerfile.parse.debian cef1d3e184 1 2 месяцев назад
README.md cef1d3e184 1 2 месяцев назад
docker-compose.search.yml 4e6f13a1d2 xin 2 месяцев назад
docker-compose.yml cef1d3e184 1 2 месяцев назад
jest.config.js cef1d3e184 1 2 месяцев назад
package-lock.json 4e6f13a1d2 xin 2 месяцев назад
package.json 4e6f13a1d2 xin 2 месяцев назад
parse-server-config.json 4e6f13a1d2 xin 2 месяцев назад
tsconfig.json 4e6f13a1d2 xin 2 месяцев назад

README.md

AI智能销售平台后端服务

基于微服务架构的现代化电商后端系统,集成AI智能客服能力。

技术栈

  • 运行时: Node.js 20+
  • 开发语言: TypeScript 5.0+
  • Web框架: Express.js 4.18+
  • 数据层: Parse Server 5.0+ + MongoDB 6.0+
  • 缓存: Redis 7.0+
  • 搜索: Elasticsearch 8.0+
  • 消息队列: Bull + Redis
  • AI平台: Coze AI

项目结构

backend/
├── src/
│   ├── server.ts              # 应用入口
│   ├── app.ts                 # Express应用配置
│   ├── config/                # 配置文件
│   ├── services/              # 微服务模块
│   │   ├── user/             # 用户服务
│   │   ├── product/          # 商品服务
│   │   ├── order/            # 订单服务
│   │   ├── payment/          # 支付服务
│   │   └── chat/             # 客服服务
│   ├── models/               # 数据模型
│   ├── controllers/          # 控制器
│   ├── middleware/           # 中间件
│   ├── utils/                # 工具函数
│   └── types/                # 类型定义
├── tests/                    # 测试文件
├── docker-compose.yml        # Docker编排
├── Dockerfile               # Docker镜像
└── package.json             # 项目配置

快速开始

环境要求

  • Node.js >= 20.0.0
  • MongoDB >= 6.0
  • Redis >= 7.0
  • Elasticsearch >= 8.0 (可选)

安装依赖

npm install

配置环境变量

cp .env.example .env
# 编辑.env文件,填入实际配置

启动开发环境

使用Docker Compose(推荐):

npm run docker:dev

或手动启动:

# 启动依赖服务(MongoDB, Redis等)
# 然后启动应用
npm run dev

运行测试

# 运行所有测试
npm test

# 运行单元测试
npm run test:unit

# 运行集成测试
npm run test:integration

# 监听模式
npm run test:watch

代码检查

# 检查代码规范
npm run lint

# 自动修复
npm run lint:fix

# 格式化代码
npm run format

微服务架构

用户服务 (User Service)

  • 用户注册、登录、认证
  • 权限和角色管理
  • 用户信息管理

商品服务 (Product Service)

  • 商品CRUD管理
  • 商品搜索和筛选
  • 分类管理
  • 库存管理

订单服务 (Order Service)

  • 订单创建和管理
  • 订单状态跟踪
  • 购物车管理

支付服务 (Payment Service)

  • 支付渠道集成
  • 支付状态管理
  • 退款处理

客服服务 (Chat Service)

  • AI智能客服
  • 人工客服转接
  • 会话管理

API文档

API文档采用OpenAPI 3.0规范,启动服务后访问:

性能指标

  • API响应时间(P95): < 300ms
  • 系统可用性: ≥ 99.9%
  • 并发用户支持: ≥ 1000
  • 数据库查询时间: < 100ms

安全措施

  • JWT认证和授权
  • HTTPS加密传输
  • 数据加密存储
  • API请求限流
  • SQL注入防护
  • XSS攻击防护

部署

Docker部署

# 构建镜像
npm run docker:build

# 运行容器
docker run -p 3000:3000 ecommerce-backend

生产环境部署

# 构建生产代码
npm run build

# 启动生产服务
npm start

监控与日志

  • 应用监控: Prometheus + Grafana
  • 日志收集: Winston + ELK Stack
  • 错误追踪: Sentry
  • 性能分析: New Relic

开发规范

详见:

常见问题

Q: 如何添加新的微服务?

A: 参考现有服务目录结构,在src/services/下创建新的服务目录。

Q: 如何进行数据库迁移?

A: 使用npm run migrate命令执行迁移脚本。

Q: 如何配置不同环境?

A: 为不同环境创建对应的.env文件(如.env.production)。

贡献指南

  1. Fork项目
  2. 创建功能分支
  3. 提交变更
  4. 推送到分支
  5. 创建Pull Request

许可证

MIT License

联系方式

  • 项目维护者: Backend Development Team
  • 技术支持: support@ecommerce-ai.com