Skip to content

laopangy/ghostMessenger-cloud

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spring Cloud 微服务项目

技术栈

  • Spring Boot: 3.2.0
  • Spring Cloud: 2023.0.0
  • Spring Cloud Alibaba: 2023.0.1.0
  • Nacos: 3.3.0 (服务注册与配置中心)
  • Redis: 5.0.14.1 (缓存)
  • MyBatis Plus: 3.5.5 (ORM 框架)
  • MySQL: 8.0.33 (数据库)
  • Druid: 1.2.20 (数据源)
  • JDK: 17

项目结构

spring-cloud-parent
├── gateway              # 网关服务 (端口: 8080)
├── common               # 公共模块
├── system         # 用户服务 (端口: 8081)
└── sql                  # SQL 脚本

模块说明

gateway (网关模块)

  • Spring Cloud Gateway 实现
  • 集成 Nacos 服务发现
  • 集成 Redis
  • 全局过滤器(日志记录)
  • 路由配置

common (公共模块)

  • 统一返回结果 Result
  • 全局异常处理
  • 自定义业务异常
  • Redis 常量定义

system (用户服务)

  • 用户 CRUD 操作
  • MyBatis Plus 集成
  • Redis 缓存集成
  • Nacos 服务注册
  • OpenFeign 支持

环境要求

  1. JDK 17+

  2. Maven 3.6+

  3. Nacos 3.3.0

  4. Redis 5.0.14.1

    • 启动命令: redis-server
  5. MySQL 8.0+

    • 执行 sql/init.sql 初始化数据库

快速开始

1. 启动基础服务

# 启动 Nacos
cd nacos/bin
startup.cmd -m standalone

# 启动 Redis
redis-server

# 启动 MySQL 并导入数据
mysql -u root -p < sql/init.sql

2. 修改配置

修改各模块的配置文件,调整 Nacos、Redis、MySQL 连接信息:

  • gateway/src/main/resources/application.yml
  • system/src/main/resources/application.yml

3. 编译打包

# 在项目根目录执行
mvn clean install

4. 启动服务

# 启动网关
cd gateway
mvn spring-boot:run

# 启动用户服务
cd system
mvn spring-boot:run

5. 访问测试

API 接口

用户服务接口

接口 方法 说明
/user/api/user/list GET 查询所有用户
/user/api/user/{id} GET 根据ID查询用户
/user/api/user/username/{username} GET 根据用户名查询用户
/user/api/user POST 新增用户
/user/api/user PUT 更新用户
/user/api/user/{id} DELETE 删除用户

配置说明

Nacos 配置

  • server-addr: 127.0.0.1:8848
  • namespace: public
  • group: DEFAULT_GROUP

Redis 配置

  • host: 127.0.0.1
  • port: 6379
  • database: 0

MySQL 配置

  • url: jdbc:mysql://localhost:3306/test_db
  • username: root
  • password: root

注意事项

  1. 确保 Nacos、Redis、MySQL 服务已启动
  2. 确保端口 8080、8081、8848、6379、3306 未被占用
  3. 首次启动前需要执行 SQL 脚本初始化数据库
  4. 建议按照顺序启动: Nacos -> Redis -> MySQL -> Gateway -> system

扩展开发

添加新的微服务模块

  1. 在父 pom.xml 中添加 module
  2. 创建新模块的 pom.xml,继承父 pom
  3. 添加 Nacos 服务发现依赖
  4. 配置 application.yml 和 bootstrap.yml
  5. 在 Gateway 中配置路由规则

常用依赖说明

  • spring-cloud-starter-alibaba-nacos-discovery: Nacos 服务发现
  • spring-cloud-starter-alibaba-nacos-config: Nacos 配置中心
  • spring-cloud-starter-openfeign: 声明式服务调用
  • spring-cloud-starter-loadbalancer: 负载均衡
  • spring-boot-starter-data-redis: Redis 支持

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages