# coffee-cloud **Repository Path**: skysong/coffee-cloud ## Basic Information - **Project Name**: coffee-cloud - **Description**: Application Framework 应用基础框架,简单高效 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-12-18 - **Last Updated**: 2026-01-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

Application Framework

### 简介 Application Framework 应用基础框架,简单高效 #### 核心理念(康威定律在微服务中的应用) ``` 微服务实践的精髓,在于将组织学中的康威定律与软件架构实践相结合。即组织模式决定架构模式。 康威定律指出,系统的架构边界反映组织的沟通结构。为了达到理想的系统架构,组织应该首先进行重组,让团队结构与你想要设计的架构保持一致。 微服务是系统架构的一种组织范式,围绕业务能力组织团队。服务设计如果跨团队协作,拖慢交付速度。而微服务要求团队是跨职能的,可以独立地交付用户价值。 ``` #### 服务演进规划 ``` GatewayService 网关服务 IdentityService 身份服务 FoundationService 基础服务(可进一步拆分为:) ├── FileService 文件服务 ├── LogService 日志服务 └── GeneratorService 代码生成器服务 ``` #### 代码结构分层( MVC ) ``` MVC 是 Model-View-Controller 的缩写,按 “接收请求(C)、处理业务 / 数据(M)、展示数据(V)” 拆分 示例:Controller 接收请求,Service/Mapper 实体类处理业务和数据,JSON 响应做展示 业务Service层职责是做业务编排 业务Service层通用逻辑可以抽离出Manager层(业务Service层控制事务,Manager层无事务控制(事务嵌套失控,取决于事务传播级别),职责是逻辑复用) 业务Service层禁止互相调用 业务Service层禁止引入Mapper层的QueryWrapper(QueryWrapper抽离到Mapper层) Mapper层可以理解成数据操作层(Dao层)或原子Service层 ``` #### 接口文档导入 ApiFox ``` 1. 获取接口文档地址 - 基础服务示例:`http://localhost:28082/v3/api-docs` 2. 导入到 ApiFox - 打开 ApiFox - 进入:我的团队 → 团队项目 → 项目设置 → 导入数据 - 选择 OpenAPI/Swagger - 使用 URL 方式导入 ``` #### 打包部署 ``` mvn clean install package '-Dmaven.test.skip=true' cd ./gateway-service docker build -t 'gateway-service:1.0' . docker run -itd --name gateway-service -p 28000:28000 -e JAVA_OPTS="" -e "SPRING_PROFILES_ACTIVE=dev" -v /opt/gateway-service-logs:/app/logs --restart=always gateway-service ``` #### 基础设施 ``` 软件名称和版本号 jdk17 nacos3.1.1 redis7.0.15 mysql8.0 ``` #### TODO ``` 增加操作日志 ```