- 更新了 DEPLOYMENT.md 文档,增加了更多部署细节和说明 - 添加了 Linux 和 Windows 平台的自动化部署脚本 - 更新了 README.md,增加了部署相关说明 - 调整了 .env 文件配置,以适应新的部署流程 - 移除了部分不必要的代码和配置
结伴客Java后端
结伴客Java微服务架构后端系统,基于Spring Boot和Spring Cloud实现。
系统架构
- 服务注册与发现: Eureka Server
- API网关: Spring Cloud Gateway
- 认证服务: Auth Service
- 用户服务: User Service
- 旅行服务: Travel Service
- 动物服务: Animal Service
- 订单服务: Order Service
- 推广服务: Promotion Service
环境要求
- JDK: Java 17
- 构建工具: Maven 3.6+
- 数据库: MySQL 8.0+
- 缓存: Redis 6.0+
- 消息队列: RabbitMQ 3.8+
环境安装
1. 安装Java 17
macOS (使用Homebrew)
brew install openjdk@17
Ubuntu/Debian
sudo apt update
sudo apt install openjdk-17-jdk
CentOS/RHEL
sudo yum install java-17-openjdk-devel
2. 安装Maven
macOS (使用Homebrew)
brew install maven
Ubuntu/Debian
sudo apt update
sudo apt install maven
CentOS/RHEL
sudo yum install maven
3. 验证安装
java -version
mvn -version
应该看到类似以下输出:
openjdk version "17.0.8" 2023-07-18
Apache Maven 3.8.6
数据库配置
- 安装MySQL 8.0+
- 创建数据库:
CREATE DATABASE jiebanke CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; - 执行初始化脚本:
mysql -u root -p jiebanke < scripts/init-database.sql
缓存和消息队列
- 安装Redis 6.0+
- 安装RabbitMQ 3.8+
构建项目
# 进入项目目录
cd backend-java
# 清理并构建项目
./build-services.sh
运行服务
方式一:使用启动脚本(推荐)
# 进入项目目录
cd backend-java
# 启动所有服务
./start-services.sh
# 停止所有服务
./stop-services.sh
方式二:手动启动
-
启动Eureka Server:
cd eureka-server mvn spring-boot:run -
等待Eureka启动完成后,依次启动其他服务:
# 在新的终端窗口中启动Auth Service cd auth-service mvn spring-boot:run # 在新的终端窗口中启动User Service cd user-service mvn spring-boot:run # 以此类推启动其他服务...
访问服务
- Eureka Dashboard: http://localhost:8761
- API Gateway: http://localhost:8080
- API文档: http://localhost:8080/doc.html
服务端口
| 服务名称 | 端口 |
|---|---|
| Eureka Server | 8761 |
| API Gateway | 8080 |
| Auth Service | 8081 |
| User Service | 8082 |
| Travel Service | 8083 |
| Animal Service | 8084 |
| Order Service | 8085 |
| Promotion Service | 8086 |
性能优化
详细的性能优化指南请参考 PERFORMANCE_OPTIMIZATION.md 文件。