一、理念
二、特性
- 让开发分布式微服务应用更简单;
 - 让部署分布式微服务应用更简单;
 - 集成众多行业领域优秀的解决方案;
 - 
三、架构思想
 模块化;
- 简单化;
 - 自动化;
 - 易扩展;
 - 轻量级;
 - 
四、技术架构
五、技术选型
 JDK版本:1.8;
- 项目依赖管理:Maven3.6.2;
 - 版本控制工具:Git;
 - 分布式框架:SpringCloud+SpringCloud Alibaba;
 - 微服务基础框架:SpringBoot;
 - 接口鉴权框架:Sa-Token;
 - 缓存:Redis;
 - 关系型数据库:MySQL;
 - 接口文档自动生成框架:Knife4j;
 - 持久层框架:MyBatis-Plus;
 - 第三方工具类框架:Hutool;
 - 数据库连接池:Druid;
 - 多数据源框架:dynamic-datasource-spring-boot-starter;
 - 限流熔断:Sentinel;
 - 分库分表中间件:ShardingJdbc、MyCat;
 - 爬虫框架:JSOUP/WebMagic;
 - 日志框架:Lombok;
 - Excel处理:Apache Poi;
 - 分布式定时任务:Quartz、Xxl-Job、Elastic-Job、ShedLock;
 - 服务链路追踪:SpringCloud Sleuth+Zipkin;
 - Word模板引擎:Poi-tl;
 - 消息队列:Kafka、ActiveMQ、RabbitMQ、RocketMQ;
 - 大数据存储与计算处理:Hadoop;
 - 分布式搜索引擎:Elastic Search;
 - 文档数据库:MongoDB;
 - SOA:Apache CXF;
 - 服务注册与配置中心:Nacos、Eureka、Dubbo;
 - 支付:IJPay;
 - 微信生态支持:WxJava;
 - 多种通信支持:gRPC、HTTP等;
 - 分布式处理引擎:Apache Flink;
 - 文件存储:私有云或公有云均支持;
 - 单元测试框架:Junit;
 - 分布式事务:Seata、Tx-LCN。
```java
├── yc-gateway         // 网关服务 [8080]
├── yc-auth            // 认证服务 [8081]
├── yc-api             // 接口服务
├── yc-common          // 通用模块
│       └── yc-common-core                    // 核心模块
│       └── yc-common-knife4j                 // 接口文档自动生成模块
│       └── yc-common-redis                   // Redis模块
│       └── yc-common-security                // 安全模块
│       └── yc-common-elasticsearch           // ElasticSearch模块
│       └── yc-common-mongodb                 // MongoDB模块
│       └── yc-common-rabbitmq                // RabbitMQ模块
│       └── yc-common-activemq                // ActiveMQ模块
│       └── yc-common-kafka                    // Kafka模块
│       └── yc-common-rocketmq                 // RocketMQ日志模块
│       └── yc-common-wx                       // 微信生态模块
│       └── yc-common-crawler                  // 爬虫模块
│       └── yc-common-seata                    // 分布式事务Seata模块
│       └── yc-common-txlcn                    // 分布式事务Tx-LCN模块
│       └── yc-common-quartz                   // 分布式定时任务Quartz模块
│       └── yc-common-xxljob                   // 分布式定时任务xxl-job模块
│       └── yc-common-logstash                 // 分布式日志管理(ELK)模块
│       └── yc-common-pay                      // 第三方支付模块
│       └── yc-common-hadoop                   // 大数据Hadoop模块
│       └── yc-common-flink                    // 分布式计算引擎模块
│       └── yc-common-netty                    // Netty模块
│       └── yc-common-openfeign                // 分布式微服务通信模块
│       └── yc-common-mp                       // MyBatis-Plus模块
│       └── yc-common-linktrack                // 分布式链路追踪模块
│       └── yc-common-cs                       // 对象云存储模块
│       └── yc-common-monitor                  // 微服务监控模块
│       └── yc-common-test                     // 单元测试模块
│       └── yc-common-nacos                    // nacos模块
│       └── yc-common-eureka                   // eureka模块
│       └── yc-common-cxf                      //  webservice模块
│       └── yc-common-sentinel                 //  sentinel模块
│       └── yc-common-shardingjdbc             //  shardingjdbc模块
│       └── yc-common-dubbo             //  dubbo模块
│       └── yc-common-grpc                     //  grpc模块
│       └── yc-common-shedlock                 //  shedlock模块
│
├── yc-modules // 微服务模块 │ └── yc-admin // 统一用户微服务 [9000] │ └── yc-cms // 内容管理微服务 [9001] │ └── yc-crawler // 爬虫微服务 [9002] │ └── yc-file // 文件微服务 [9003] │ └── yc-job // 定时任务服务 [9004] │ └── yc-plugins // 插件微服务 [9005] │ └── yc-wechat // 微信生态微服务 [9006] │ └── yc-monitor-server // 监控微服务 [9100] ├──pom.xml 
```
