blob: 5af769d29fa4c118c0ea2ed6454a85ea41aff87b [file] [log] [blame]
commit e8bdd1a0a5a02686b2d7dca14f3e676eb4d9bb4d
Author: liyao <maxwell92@126.com>
Date: Tue Jun 6 23:04:39 2023 +0800
docs: update features (#397)
* docs: update docs
Signed-off-by: mlycore <maxwell92@126.com>
* docs: update docs
Signed-off-by: mlycore <maxwell92@126.com>
---------
Signed-off-by: mlycore <maxwell92@126.com>
diff --git a/docs/content/features/DBRE/_index.cn.md b/docs/content/features/DBRE/_index.cn.md
index 25e061d..67972f7 100644
--- a/docs/content/features/DBRE/_index.cn.md
+++ b/docs/content/features/DBRE/_index.cn.md
@@ -1,6 +1,26 @@
+++
pre = "<b>3.2 </b>"
-title = "ShardingSphere Chaos 介绍"
+title = "数据库可靠性工程"
weight = 2
chapter = true
+++
+
+## 概述
+
+数据库可靠性工程(Database Reliability EngineeringDBRE)类似站点可靠性工程(Site Reliability EngineeringSRE),关注通过各种技术手段提升数据库相关服务的稳定性。对于部署在 Kubernetes 之上的 ShardingSphere 来说,需要借助 Operator 进一步实现 DBRE
+
+## 高可用部署
+
+ShardingSphere Proxy 本身是无状态的,作为计算节点用来处理客户端发来的 SQL 并完成相关数据计算。因此,Operator 通过 ComputeNode ShardingSphere Proxy 进行抽象和描述。目前,ShardingSphere Proxy 因其无状态性,可以使用 Deployment 部署模式进行。Deployment Kubernetes 提供的基础部署方式,其所管理的 Pod 之间并无差异。ShardingSphere 通过 Deployment 进行部署,可以获得健康检查、就绪检查等基础自愈能力,以及滚动升级和历史版本回滚等特性。
+
+ComputeNode 的定义中包含了部署 ShardingSphere Proxy 所需要的各类属性,如副本数、镜像仓库信息和版本信息、数据库驱动信息、健康检查和就绪检查探针等,还包含了端口映射规则、服务启动需要的 Server.yamllogback.xml Agent 相关的配置等信息。这些信息在 Operator 的调谐过程中会分别渲染为 Kubernetes DeploymentService ConfigMap,并自动完成相关绑定和挂载动作。
+
+借助于 Deployment 的能力,除了可以轻松实现多副本部署外,还可以实现亲和性、污点容忍等高级调度特征,这些都为 ShardingSphere Proxy 提供了基础高可用能力。
+
+## 自动弹性扩容
+
+Kubernetes 社区提供了水平弹性扩容控制器(Horizontal Pod AutoscalerHPA),可以实现基于 CPU 和内存的自动水平弹性扩容,也可以配合 Prometheus Adapter 实现基于自定义指标的扩容能力。
+
+## 可观测性
+
+ShardingSphere Proxy 可以通过 ShardingSphere Agent 采集并暴露相关运行指标,ShardingSphere on Cloud 提供了相应的 Grafana 模板。Agent 相关信息可以参考[链接](https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-proxy/observability/)。
diff --git a/docs/content/features/EcosystemExtensions/_index.cn.md b/docs/content/features/EcosystemExtensions/_index.cn.md
index 59d7bc4..824197b 100644
--- a/docs/content/features/EcosystemExtensions/_index.cn.md
+++ b/docs/content/features/EcosystemExtensions/_index.cn.md
@@ -5,3 +5,12 @@ weight = 4
chapter = true
+++
+## WebAssembly 扩展
+
+WebAssembly 起初是为了解决 JavaScript 在浏览器上的一些性能瓶颈,目前已经不局限于浏览器, WASI 规范使得其可以运行在更多的场景中,例如可信计算、边缘计算等。目前主流的语言基本都支持编译到 WASM
+
+ShardingSphere 的插件(SPI)只支持 java 生态,把 WASM 引入到 ShardingSphere 中可以进一步开放生态,吸引更多的社区开发者。例如,社区针对自定义分片场景,创建了简单的 demo 增加了 WasmShardingAlgorithm.java 模块,用于加载和运行用户提供的 wasm 自定义分片逻辑。
+
+此外由于 ShardingSphere 定义分片规则只支持 Java 生态中的 Groovy 语法,通过 WASM 用户可以使用自己熟悉的语言生态来定义分片逻辑。WASM-sharding-js 则演示了如何通过 JavaScript 定义 CRC32MOD 分片算法。
+
+