## 引言
JeeSite Cloud 具备 [JeeSite 4.x](https://gitee.com/thinkgem/jeesite4) 的所有功能,是在 JeeSite 4.x 基础之上,完成的 [Spring Cloud](https://spring.io/projects/spring-cloud) 分布式系统套件的整合。它利用 JeeSite 5.x 的开发便利性巧妙地简化了分布式系统开发。
JeeSite Cloud 并没有重复制造轮子,它只是将目前比较成熟的、经得起实际考验的服务框架组合起来,通过 Spring Boot 风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。
集成阿里优秀组件 Nacos 服务治理与配置中心、集成 Sentinel 流量卫兵;集成 Zipkin 链路追踪;集成 Seata 分布式事务等,详见技术选型章节。
**特点:用经典开发模式,开发分布式应用,两个字【简单】,一个字【快】。**
源码仓库地址:<https://gitee.com/thinkgem/jeesite4-cloud>
## 优势(只写别人没有的)
1. 在 JeeSite 单应用基础之上,完成的 Cloud 功能,使用经典开发模式,就像开发单应用一样开发分布式应用
2. 它提供了微服务模块的代码生成工具,快速生成开发微服务功能,包含微服务的发布和调用接口
3. 我们将 api 和 client 合体为一个工程,自动适应自己调用自己 client 的影响,简化工程数量
4. 解决 Feign 接口不能多重继承问题,如一些通用操作(增删改查)微服务接口基类实现,这些都不用自己写了
5. 统一的授权认证、基础数据微服务,都已经提供查询 client 接口,其他微服务应用模块中可直接获取用户、组织、权限、字典等基础数据。微服务之间调用中,出现的会话及缓存的一致性统一得到解决。
6. 如 UserUtils、EmpUtils、EmpUserService、OfficeService 等等众多的基础服务工具类,都可以直接从基础数据的微服务中获取数据,你不必考虑跨 web 服务的数据交互,我们已经帮你做了。
7. 微服务组件 Nacos、Sentinel、Zipkin 提供源码方式启动部署,方便开发调试。
8. 写一个别人有的,使用柔性事务入侵性小,跨 web 服务的情况,支持单个微服务独立数据库。
9. 集成工作流,提供BPM引擎独立的服务,客户端只需调用API,无需加载复杂流程引擎。
10. 其它优势(按 Ctrl + Shift 点击链接):<http://jeesite.com/docs/feature/>
## 技术选型
* 分布式系统套件版本:Spring Cloud 2021.0.4 + Alibaba 2021.0.4
* 服务治理注册与发现:Spring Cloud Eureka / Consul / Nacos 2.1
* 分布式统一配置中心:Spring Cloud Config / Nacos 2.1
* 网关路由代理调用:Spring Cloud Gateway (动态网关)
* 声明式服务调用:Spring Cloud OpenFeign
* 客户端负载均衡:Spring Cloud LoadBalancer
* 阿里流量防卫兵:Sentinel 1.8 (限流、熔断降级、负载保护)
* 分布式事务框架:Seata 1.5 (可选组件)
* 分布式链路追踪:Zipkin 2.23 (可选组件)
* 工作流引擎框架:Flowable 6.6 (可选组件)
## 子项目介绍
* 服务注册:jeesite-cloud-eureka : <http://127.0.0.1:8970>
* 配置中心:jeesite-cloud-config : <http://127.0.0.1:8971/project/default>
* **服务注册和配置中心 Nacos 版本**(推荐) :<http://127.0.0.1:8848/nacos/index.html>
* 网关路由:jeesite-cloud-gateway : <http://127.0.0.1:8980/js/a/login>
* 核心模块(**统一授权认证服务、平台基础数据服务**):
- 核心主项目:jeesite-cloud-module-core : <http://127.0.0.1:8981/js>
- 客户端项目(提供其它模块调用):jeesite-cloud-module-core-client
* 测试模块1(单表增删改查示例):
- 模块1主项目:jeesite-cloud-module-test1 : <http://127.0.0.1:8982/js>
- 模块1客户端项目(提供其它模块调用):jeesite-cloud-module-test1-client
* 测试模块2(树表增删改查示例):
- 模块2主项目:jeesite-cloud-module-test2 : <http://127.0.0.1:8983/js>
- 模块2客户端项目(提供其它模块调用):jeesite-cloud-module-test2-client
* 测试模块3(代码生成的模块和代码生成的增删改查,**该模块完全没有手写,全部为生成的**):
- 模块3主项目:jeesite-cloud-module-test3 : <http://127.0.0.1:8985/js>
- 模块3客户端项目(提供其它模块调用):jeesite-cloud-module-test3-client
* 业务流程基础服务(流程引擎服务,客户端只需调用接口,无需加载引擎逻辑):
- 流程主项目:jeesite-cloud-module-bpm : <http://127.0.0.1:8990>
- 客户端项目(提供其它模块调用):jeesite-cloud-module-bpm-client
* 分布式事务 Seata 服务(1.5之后新增监控界面,端口7091):
- 服务主项目:jeesite-cloud-module-seata : <http://127.0.0.1:7091>
- 客户端项目(提供其它模块调用):jeesite-cloud-module-seata-client
* 熔断限流:jeesite-cloud-sentinel : <http://127.0.0.1:9311>
* 链路追踪:jeesite-cloud-zipkin : <http://127.0.0.1:9411>
* 解释:主项目为服务提供者、客户端项目为服务消费者
## 快速运行
### 初始化数据库
JeeSite Cloud 版本的数据库与 JeeSite 单机版数据库相同,你可以 [下载最新的mysql脚本](https://gitee.com/thinkgem/jeesite4/attach_files)
或者使用 [init-data.bat(sh)](http://jeesite.com/docs/install-deploy/#初始化数据库) 命令完成初始化(支持多种数据库)。
### 安装 Redis
Redis 是一个缓存数据库,主要用来集中式管理共享会话和系统缓存的,如果你已安装 Redis,可以忽略这个步骤。
由于 Windows 版本的 Redis 安装不太方便,所以我们提供了该版本的安装文件和安装脚本。
下载地址:<https://gitee.com/thinkgem/jeesite4-cloud/attach_files> 找到 `Redis-x64-4.0.2.2.zip` 下载文件。
解压 `Redis-x64-4.0.2.2.zip` 压缩包,运行 `service-install.bat` 安装 Windows 系统服务。
默认地址:127.0.0.1;默认端口:6379;默认密码:1234,可根据自己需要修改 conf 文件。
### 启动 Nacos 服务
Nacos 致力于帮助您发现、配置和管理微服务。
Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。
Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。
如果使用 Nacos 就不用部署 `jeesite-cloud-eureka` 和 `jeesite-cloud-config` 了。
JeeSite Cloud 提供了 2 种部署方式,你可以下载 jar 也可以 src 方式运行:
**jar 方式:**
1. 下载地址:<https://github.com/alibaba/nacos/releases/download/2.1.1/nacos-server-2.1.1.zip>
2. 解压 `nacos-server-2.1.1.zip` 压缩包,运行 `/bin/startup.cmd(sh)` 启动服务。
**src 方式:**
1. 在 Eclipse 或 IDEA 中 找到 jeesite-cloud-nacos 项目。
2. 运行 NacosApplication 类的 main 方法,即可启动服务。
**配置 mysql 存储:**
1. 默认情况 Nacos 采用 Derby 数据库,你可以将数据库切换到 MySQL 下。
2. 找到 /nacos/src/main/resources/config/nacos-mysql.sql 文件导入数据表。
3. 找到 Nacos 的配置文件 application.properties 如下:
```properties
spring.datasource.platform=mysql
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?useSSL=false&characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&serverTimezone=UTC
db.user=root
db.password=123456
# 如果是 application.properties 文件,将 key 后的冒号换为等号即可。
```
**启动完成后:**
浏览器访问:<http://127.0.0.1:
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
谈到微服务的设计和开发,大家可能会想到 Netflix OSS Spring Cloud Service CombService Mesh 等技术。 Ne ix oss 可以说是最早使用微服务架构的一个开源技术,它的注册中心( Eureka )、负载均衡(Ribbon ),以及智能路由(Zuul) 等组件至今仍是 Spring Cloud 框架中的一些重要组成部分。 Spring Cloud 是开发人员比较熟悉的一个微服务开发框架, Spring Cloud 社区也是一个粉丝众多,并且至今仍然非常活跃的微服务社区。 Service Comb 是华为开发的一个可以支持多语言的开发框架,目前可以支持 Go Java开发语言。 Service Mesh 是一种基于基础设施层、实现服务之间快速通信的新的微服务开发技术。 Spring Cloud 是在应用层实现微服务,其功能齐全的工具组件为进行微服务设计和开发提供了非常便利的条件,所以绝大多数开发人员都选择使用 Spring Cloud 实施微服务架构设计。 正因为如此, Spring Cloud 的生态体系非常庞大,各种大大小小的
资源推荐
资源详情
资源评论
收起资源包目录
JeeSite Spring Cloud 分布式系统套件.rar (670个子文件)
startup.bat 1KB
startup.bat 1KB
startup.bat 1KB
startup.bat 1KB
startup.bat 1KB
startup.bat 1KB
startup.bat 1KB
startup.bat 1KB
startup.bat 1KB
startup.bat 1KB
init-data.bat 888B
run-web.bat 581B
run-web.bat 581B
run-web.bat 581B
run-web.bat 581B
run-web.bat 581B
run-web.bat 581B
run-web.bat 581B
run-web.bat 581B
run-web.bat 581B
run-web.bat 581B
run-tomcat.bat 430B
run-tomcat.bat 430B
run-tomcat.bat 430B
run-tomcat.bat 430B
run-tomcat.bat 430B
run-tomcat.bat 430B
run-tomcat.bat 430B
run-tomcat.bat 430B
run-tomcat.bat 430B
run-tomcat.bat 430B
package.bat 386B
docker-build.bat 386B
docker-build.bat 386B
package.bat 386B
package.bat 386B
docker-build.bat 386B
package.bat 386B
docker-build.bat 386B
package.bat 386B
docker-build.bat 386B
docker-build.bat 386B
package.bat 386B
package.bat 386B
docker-build.bat 386B
package.bat 386B
docker-build.bat 386B
package.bat 386B
docker-build.bat 386B
package.bat 386B
docker-build.bat 386B
package.bat 368B
package.bat 368B
package.bat 368B
deploy.bat 364B
package.bat 360B
package.bat 360B
deploy.bat 356B
deploy.bat 356B
deploy.bat 356B
deploy.bat 356B
package.bat 337B
main.css 462KB
editor.main.css 168KB
console1412.css 153KB
bootstrap.css 120KB
bootstrap.min.css 97KB
app.css 45KB
main.css 36KB
font-awesome.css 33KB
font-awesome.min.css 30KB
codemirror.css 9KB
page.css 6KB
icon.css 5KB
merge.css 4KB
timeline.css 3KB
common.css 211B
license-stat.csv 856B
Dockerfile 494B
Dockerfile 459B
Dockerfile 458B
Dockerfile 457B
Dockerfile 457B
Dockerfile 457B
Dockerfile 457B
Dockerfile 456B
Dockerfile 453B
Dockerfile 451B
aliyun-console-font.eot 166KB
roboto-bold.eot 23KB
roboto-regular.eot 22KB
roboto-medium.eot 22KB
roboto-light.eot 22KB
roboto-thin.eot 21KB
icon-font.eot 10KB
test3.erm 109KB
test.erm 109KB
cluster.conf.example 670B
spring.factories 117B
spring.factories 117B
共 670 条
- 1
- 2
- 3
- 4
- 5
- 6
- 7
资源评论
野生的狒狒
- 粉丝: 3393
- 资源: 2436
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功