提交 b34445e7 编写于 作者: X xiongchun

UPDATE DOCS.

上级 69ecfac8
......@@ -24,24 +24,7 @@ export const Highlight = ({children, color}) => (
</span>
);
[**盘古开发框架**](/) 是一套轻量稳健的工业级 Web 接口服务和中后台业务系统开发框架。它基于商业友好的 [Apache-2.0](https://www.apache.org/licenses/LICENSE-2.0)协议<Highlight color="#25c2a0">免费开源</Highlight>发布。我们希望不仅是开源的受益者也能成为开源贡献者,与开源社区一起**共建共享开源生态**
## 特性一览
- **开箱即用、轻量灵活**
开箱即用的技术组件库,可随意组合、自动装配。轻量灵活的 [权限系统参考实现](/online-demo) ,可实现快速搭建二次开发脚手架的能力。同时支持大并发易扩展的高可用分布式架构也能快速组装成垂直单体分层架构。
- **成熟架构、稳定可靠**
盘古技术栈融合云原生思想,在微服务、容器化、DevOps 等方面完美支持和适配。可在云原生时代构建以「服务」为中心的现代应用架构,帮助用户在云环境中更好的构建、交付和管理自己的微服务平台。
- **全栈百搭适配各类业务场景**
聚焦面向(移动)互联网的电商、金融、云端 SAAS 服务等大并发高可用可扩展的业务场景。 同时也能满足诸如 ERP 、CRM 等各种企业数字化和各级电子政务系统的中小规模应用需求。
## 生态架构图
<img width="800"
src={require('/resources/doc/34-pangu-framework.png').default}
alt="盘古开发框架生态架构图" />
[**盘古开发框架**](/) 是一套轻量稳健的工业级 Web 接口服务和中后台业务系统开发框架。原生支持微服务分布式架构的同时也兼容单体应用架构模式。基于商业友好的 [Apache-2.0](https://www.apache.org/licenses/LICENSE-2.0)协议<Highlight color="#25c2a0">免费开源</Highlight>发布。我们希望不仅是开源的受益者也能成为开源贡献者,与开源社区一起**共建共享开源生态**
## 设计原则
......@@ -58,6 +41,23 @@ export const Highlight = ({children, color}) => (
- **一致性原则**
双架构支持,既是分布式微服务架构的工业级首选,同时也能兼容特定需求场景下的单体应用开发。
## 生态架构图
<img width="800"
src={require('/resources/doc/34-pangu-framework.png').default}
alt="盘古开发框架生态架构图" />
## 特性一览
- **开箱即用、轻量灵活**
开箱即用的技术组件库,可随意组合、自动装配。轻量灵活的 [权限系统参考实现](/online-demo) ,可实现快速搭建二次开发脚手架的能力。同时支持大并发易扩展的高可用分布式架构也能快速组装成垂直单体分层架构。
- **成熟架构、稳定可靠**
盘古技术栈融合云原生思想,在微服务、容器化、DevOps 等方面完美支持和适配。可在云原生时代构建以「服务」为中心的现代应用架构,帮助用户在云环境中更好的构建、交付和管理自己的微服务平台。
- **全栈百搭适配各类业务场景**
聚焦面向(移动)互联网的电商、金融、云端 SAAS 服务等大并发高可用可扩展的业务场景。 同时也能满足诸如 ERP 、CRM 等各种企业数字化和各级电子政务系统的中小规模应用需求。
## 主要功能
1. 自定义的 Spring Boot 启动器,完成各功能组件的自动装配。
......
......@@ -221,6 +221,12 @@ npm run serve
完整体验请访问:[在线演示系统](/online-demo)
<details>
<summary><b>快速 QA:</b>可以将盘古 Admin 改为单体应用吗?</summary>
<div>
必须可以。只需要自己做一些简单的代码合并即可将 RPC 微服务调用改为本地服务调用。如果连配置中心都不想搭建的话,可以将配置直接改为本地配置文件。
</div>
</details>
## 下一步
继续阅读其它章节获取你想要的答案或通过我们的 [开发者社区](/community) 寻求更多帮助。
......@@ -105,7 +105,7 @@ const config = {
label: '开发文档',
},
{
to: '/faq/index',
to: '/faq/faq1',
label: '常见问答',
position: 'left'
},
......@@ -154,7 +154,7 @@ const config = {
}
, {
label: '常见问答',
to: '/faq/index',
to: '/faq/faq1',
}
],
},
......@@ -190,7 +190,7 @@ const config = {
}
],
copyright: `PanGu Dev Framework is Open Source and freely available under the <a target="_blank" class="ghostwhite" href="https://www.apache.org/licenses/LICENSE-2.0">Apache v2 License.</a>
<br>Copyright © ${new Date().getFullYear()} <a target="_blank" class="ghostwhite" href="https://www.pulanit.com">PuLan Open Source Community</a><br><img src="./img/dashi.gif" />`,
<br>Copyright © ${new Date().getFullYear()} <a target="_blank" class="ghostwhite" href="https://www.pulanit.com">PuLan Open Source Community</a><br><img src="https://pulanos.gitee.io/pangu-framework/img/dashi.gif" />`,
},
prism: {
theme: lightCodeTheme,
......
---
title: 简介
tags: [盘古简介,盘古架构]
sidebar_position: 1
slug: /index
---
# 简介
<head>
<title>盘古开发框架简介</title>
<meta name="keywords" content="盘古开发框架简介" />
<meta name="description" content="盘古开发框架是一套轻量稳健的工业级分布式微服务开发治理框架(兼容单体分层架构)" />
</head>
[**盘古开发框架**](/) 是独立于 Spring Cloud 生态的一套轻量灵活、成熟可靠的工业级分布式微服务开发治理框架(兼容垂直单体分层架构)。它基于 [Apache-2.0](https://www.apache.org/licenses/LICENSE-2.0) 协议**开源**发布,且是**免费**的。我们希望不仅是开源的受益者,也能成为开源贡献者,与开源社区一起**共建共享开源生态**
## 设计原则
在类设计、模块结构划分、技术组件选型、框架体系架构设计时会优先遵循的一些设计范式和指导原则。
- **极简原则**
大道至简,简单代表好用、稳定、易协作。坚持「Keep it Simple & Stupid」设计理念。
- **最佳实践原则**
通过大量的生产实例总结,沉淀复用最佳实践。
- **无为而无不为**
不求大而全,聚焦专而精,保持架构的纯洁与透明。坚持「Less is More」设计理念。
- **服务优先原则**
「服务」是盘古开发框架的一等公民,我们旨在微服务和云原生范式基础上构建「以服务为中心」的现代应用架构。
- **轻量灵活一致性原则**
通用功能模块化,既能下沉复用也能对标替换;一套架构既是分布式微服务架构的工业级首选,同时也能兼容单体应用开发。
## 生态架构图
<img width="800"
src={require('/resources/doc/34-pangu-framework.png').default}
alt="盘古开发框架生态架构图" />
## 主要功能
1. 自定义的 Spring Boot 启动器,完成各功能组件的自动装配。
2. 自研轻量 Maven 插件,支持各场景的模版代码生成。
3. 配置参数外部化、动态化和中心化管理。
4. 面向接口代理的高性能 RPC 服务调用。
5. 支持服务调用智能容错和负载均衡、服务限流与熔断、可视化的服务治理与运维等。构建「以服务为中心」的现代应用架构服务平台。
6. 强大的数据访问能力,内置通用 CRUD 接口;支持 Lambda 表达式;提供逻辑删除、乐观锁、分页、字段值填充等功能。
7. 支持基于异步非阻塞模型的高性能 HTTP 网关通过泛化调用后端 Dubbo 服务。同时网关支持 HTTP 层的鉴权、动态限流、熔断、防火墙、灰度发布等。
8. 提供靠谱的最终一致性分布式事务落地方案。
9. 提供数据治理相关功能,如:读写分离、数据分片、数据加密等。
10. 提供消息队列在异步通信、服务解耦、消峰填谷、缓存同步等应用场景下的使用能力。
11. 提供分布式环境下的多级缓存功能(注解式和编程式)。Caffeine 作为一级本地缓存,Redis 作为二级集中式缓存。
12. 支持可配置、可监控的分布式任务调度。
13. 支持注解声明式和编程式对业务代码在分布式环境下加并发互斥锁。
14. 应用日志输出级别动态切换、分布式日志跟踪等...
## 组件依赖
### 基础核心组件
- Spring ※ Spring Boot
- MyBatis (MyBatis Plus)
- Apache Dubbo
- Aliware Nacos
### 扩展增强型组件
- Apache ShardingSphere
- Aliware Seata
- Aliware Sentinel
- Layering Cache
- Lock4J
- TLog
### 辅助工具类组件
- Lombok
- Apache Commons
- Google Guava
- Hutool
### 可选组件
- Apache ShenYu
- XXL Job
> **可选组件**指:由我们优选的做过适配或提供集成方案但不作为盘古框架缺省或标配的组件。
## 模块列表
- 盘古资源依赖声明管理模块:pangu-parent
- 盘古公共基础类库:pangu-common
- 盘古启动、中心化配置等基础能力自动装配模块:pangu-spring-boot-starter
- 盘古 Dubbo 服务开发自动装配模块:pangu-dubbo-spring-boot-starter
- 盘古数据库持久化操作自动装配模块:pangu-jdbc-spring-boot-starter
- 盘古缓存开发自动装配模块:pangu-cache-spring-boot-starter
- 盘古 Web 应用自动装配模块:pangu-web-spring-boot-starter
- 盘古消息队列自动装配模块:pangu-rabbitmq-spring-boot-starter
- 盘古分布式事务自动装配模块:pangu-seata-spring-boot-starter
- 盘古数据治理(读写分离、数据分片等)自动装配模块:pangu-data-governance-spring-boot-starter
- 盘古代码生成器Maven插件:pangu-generator-maven-plugin
- 盘古项目官网和文档:pangu-website
- 盘古框架模版化参考范例集:pangu-examples
## FAQ
你最想了解的常见问答可能都在这里:[:soon: 常见问答 FAQ](/faq/index)
## 下一步
继续阅读其它章节获取你想要的答案或通过我们的 [开发者社区](/community) 寻求更多帮助。
\ No newline at end of file
---
title: 前端开发常见问答
tags: [FAQ]
hide_table_of_contents: true
sidebar_position: 20
slug: /faq3
---
<head>
<title>常见问答 | 盘古开发框架</title>
</head>
---
title: 后端开发常见问答
tags: [FAQ]
hide_table_of_contents: true
sidebar_position: 10
slug: /faq2
---
<head>
<title>常见问答 | 盘古开发框架</title>
</head>
\ No newline at end of file
---
title: 安装
tags: [盘古简介,盘古架构]
sidebar_position: 2
slug: /install2
---
<head>
<title>盘古开发框架 | 安装 | 依赖管理模块 | 基础模块 | Dubbo模块 | JDBC模块 | 分布式事务管理模块 | 数据治理模块 | 缓存模块 | 消息队列模块 | 网关模块 | Web模块 | 代码生成插件</title>
<meta name="keywords" content="盘古开发框架 | 安装 | 依赖管理模块 | 基础模块 | Dubbo模块 | JDBC模块 | 分布式事务管理模块 | 数据治理模块 | 缓存模块 | 消息队列模块 | 网关模块 | Web模块 | 代码生成插件" />
<meta name="description" content="盘古开发框架是一套轻量稳健的工业级分布式微服务开发治理框架(兼容单体分层架构)" />
</head>
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
盘古开发框架已经发布到 Maven 中央仓库,直接使用如下方法安装使用即可。
## 依赖管理模块
盘古资源依赖声明管理模块。所有盘古引用都应该依赖这个模块。
<Tabs>
<TabItem value="maven" label="Maven坐标">
```jsx
<parent>
<groupId>com.gitee.pulanos.pangu</groupId>
<artifactId>pangu-parent</artifactId>
<version>${最新稳定版本}</version>
<relativePath/>
</parent>
```
</TabItem>
<TabItem value="Gradle" label="Gradle DSL">
```jsx
implementation 'com.gitee.pulanos.pangu:pangu-parent:${最新稳定版本}'
```
</TabItem>
</Tabs>
## 基础模块
盘古启动、中心化配置、动态日志等基础能力自动装配模块。
<Tabs>
<TabItem value="maven" label="Maven坐标">
```jsx
<dependency>
<groupId>com.gitee.pulanos.pangu</groupId>
<artifactId>pangu-spring-boot-starter</artifactId>
</dependency>
```
</TabItem>
<TabItem value="Gradle" label="Gradle DSL">
```jsx
implementation 'com.gitee.pulanos.pangu:pangu-spring-boot-starter:${最新稳定版本}'
```
</TabItem>
</Tabs>
## Dubbo模块
盘古微服务开发自动装配模块。
<Tabs>
<TabItem value="maven" label="Maven坐标">
```jsx
<dependency>
<groupId>com.gitee.pulanos.pangu</groupId>
<artifactId>pangu-dubbo-spring-boot-starter</artifactId>
</dependency>
```
</TabItem>
<TabItem value="Gradle" label="Gradle DSL">
```jsx
implementation 'com.gitee.pulanos.pangu:pangu-dubbo-spring-boot-starter:${最新稳定版本}'
```
</TabItem>
</Tabs>
## JDBC模块
盘古数据库持久化操作自动装配模块。
<Tabs>
<TabItem value="maven" label="Maven坐标">
```jsx
<dependency>
<groupId>com.gitee.pulanos.pangu</groupId>
<artifactId>pangu-jdbc-spring-boot-starter</artifactId>
</dependency>
```
</TabItem>
<TabItem value="Gradle" label="Gradle DSL">
```jsx
implementation 'com.gitee.pulanos.pangu:pangu-jdbc-spring-boot-starter:${最新稳定版本}'
```
</TabItem>
</Tabs>
## 分布式事务管理模块
盘古 Seata 分布式事务自动装配模块。
<Tabs>
<TabItem value="maven" label="Maven坐标">
```jsx
<dependency>
<groupId>com.gitee.pulanos.pangu</groupId>
<artifactId>pangu-seata-spring-boot-starter</artifactId>
</dependency>
```
</TabItem>
<TabItem value="Gradle" label="Gradle DSL">
```jsx
implementation 'com.gitee.pulanos.pangu:pangu-seata-spring-boot-starter:${最新稳定版本}'
```
</TabItem>
</Tabs>
## 数据治理模块
盘古 ShardingSphere 数据治理(如:读写分离、数据分片、数据加密等)自动装配模块。
<Tabs>
<TabItem value="maven" label="Maven坐标">
```jsx
<dependency>
<groupId>com.gitee.pulanos.pangu</groupId>
<artifactId>pangu-data-governance-spring-boot-starter</artifactId>
</dependency>
```
</TabItem>
<TabItem value="Gradle" label="Gradle DSL">
```jsx
implementation 'com.gitee.pulanos.pangu:pangu-data-governance-spring-boot-starter:${最新稳定版本}'
```
</TabItem>
</Tabs>
## 缓存模块
盘古缓存开发自动装配模块。
<Tabs>
<TabItem value="maven" label="Maven坐标">
```jsx
<dependency>
<groupId>com.gitee.pulanos.pangu</groupId>
<artifactId>pangu-cache-spring-boot-starter</artifactId>
</dependency>
```
</TabItem>
<TabItem value="Gradle" label="Gradle DSL">
```jsx
implementation 'com.gitee.pulanos.pangu:pangu-cache-spring-boot-starter:${最新稳定版本}'
```
</TabItem>
</Tabs>
## 消息队列模块
盘古 RabbitMQ 消息队列开发自动装配模块。
<Tabs>
<TabItem value="maven" label="Maven坐标">
```jsx
<dependency>
<groupId>com.gitee.pulanos.pangu</groupId>
<artifactId>pangu-rabbitmq-spring-boot-starter</artifactId>
</dependency>
```
</TabItem>
<TabItem value="Gradle" label="Gradle DSL">
```jsx
implementation 'com.gitee.pulanos.pangu:pangu-rabbitmq-spring-boot-starter:${最新稳定版本}'
```
</TabItem>
</Tabs>
## Web模块
盘古 Web 应用自动装配模块。
<Tabs>
<TabItem value="maven" label="Maven坐标">
```jsx
<dependency>
<groupId>com.gitee.pulanos.pangu</groupId>
<artifactId>pangu-web-spring-boot-starter</artifactId>
</dependency>
```
</TabItem>
<TabItem value="Gradle" label="Gradle DSL">
```jsx
implementation 'com.gitee.pulanos.pangu:pangu-web-spring-boot-starter:${最新稳定版本}'
```
</TabItem>
</Tabs>
## 代码生成插件
盘古代码生成器 Maven 插件。
<Tabs>
<TabItem value="maven" label="Maven坐标">
```jsx
<dependency>
<groupId>com.gitee.pulanos.pangu</groupId>
<artifactId>pangu-generator-maven-plugin</artifactId>
</dependency>
```
</TabItem>
<TabItem value="Gradle" label="Gradle DSL">
```jsx
implementation 'com.gitee.pulanos.pangu:pangu-generator-maven-plugin:${最新稳定版本}'
```
</TabItem>
</Tabs>
## 下一步
继续阅读其它章节获取你想要的答案或通过我们的 [开发者社区](/community) 寻求更多帮助。
\ No newline at end of file
---
title: 常见问答FAQ
hide_table_of_contents: false
title: 综合类常见问答
tags: [FAQ]
hide_table_of_contents: true
sidebar_position: 1
slug: /faq1
---
<head>
<title>盘古开发框架 | 常见问答 FAQ</title>
<meta name="keywords" content="盘古开发框架 | 常见问答FAQ" />
<meta name="description" content="盘古开发框架是一套轻量稳健的工业级分布式微服务开发治理框架(兼容单体分层架构)" />
<title>常见问答 | 盘古开发框架</title>
</head>
# 常见问答FAQ
:::tip
这里汇聚了用户在技术选型时关心的问题和日常开发过程中的奇淫巧技以及可能会碰到的各种疑难杂症。
:::
## 综合答疑
#### 1. 盘古开发框架的开源协议是啥?创始初衷和目标愿景是什么?
「盘古开发框架」基于商业友好的 [Apache-2.0](https://www.apache.org/licenses/LICENSE-2.0) 协议**开源**发布,且是**免费**的,创始初衷是「分享经验-传递价值-成就你我」。目标愿景是「共建共享开源生态」,不仅做开源生态的受益者也希望成为开源生态的贡献者。
#### 2. 盘古开发框架可以做单体开发吗?
可以。从纯技术角度看,盘古开发的最佳姿势是 [分布式微服务开发](/docs/quick-start/how-to-make-microservice-architecture-app)但也支持搭建 [垂直单体分层架构的开发模式](/docs/quick-start/how-to-make-monomer-architecture-app)
可以。从纯技术角度看,盘古开发的最佳姿势是 [分布式微服务开发](/docs/quick-start/how-to-make-microservice-architecture-app)但也支持搭建 [垂直单体分层架构的开发模式](/docs/quick-start/how-to-make-monomer-architecture-app)
#### 3. 盘古开发框架和 [Spring Cloud](https://spring.io/projects/spring-cloud) 或 [Spring Cloud Alibaba](https://spring.io/projects/spring-cloud-alibaba) 是什么关系?
没有直接关系。「盘古开发框架」基于阿里的 Nacos、Seata、Sentinel 和 Apache 的 ShenYu、Dubbo、ShardingSphere 等分布式中间件输出分布式微服务架构的能力。是一套完全独立于 Spring Cloud 生态的轻量灵活、成熟可靠的工业级分布式微服务开发和治理框架(兼容垂直单体分层架构)
没有直接关系。「盘古开发框架」直接基于阿里的 Nacos、Seata、Sentinel 和 Apache 的 Dubbo、ShardingSphere 等分布式中间件输出微服务架构的能力。是一套完全独立于 Spring Cloud 生态的轻量灵活、成熟可靠的工业级分布式微服务开发和治理框架。相较于 SC 和 SCA 而言,简单、纯洁、不被污染和绑架、易扩展好维护是其显著特点
#### 4. 盘古开发框架可以开发前端吗?有没有现成的『通用权限管理系统』?
不可以。盘古是纯后端的底层技术架构框架,可开发 Web API 接口、 Dubbo 接口或执行纯后台任务。目前不涉及前端UI层开发,更无所谓的『通用权限管理系统』。
## 后端开发
## Web 前端开发
可以。盘古前端基于 SUCI 开发。SCUI 是一个中后台前端解决方案,基于 VUE3 和 ElementPlus 实现。更多 SCUI 信息,请直接参考其 [项目主页和相关文档](https://lolicode.gitee.io/scui-doc/guide/)。同时,我们基于 SCUI 和盘古开发框架后端能力提供了一套轻量成熟的 [权限系统参考实现](/online-demo)。大家可以基于此快速进行业务系统的二次开发。
## Mobile 前端开发
\ No newline at end of file
## 下一步
继续阅读其它章节获取你想要的答案或通过我们的 [开发者社区](/community) 寻求更多帮助。
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册