diff --git a/back/redkale/getting-started.md b/back/redkale/getting-started.md
deleted file mode 100644
index 2ee07ee..0000000
--- a/back/redkale/getting-started.md
+++ /dev/null
@@ -1,77 +0,0 @@
----
-sidebar_position: 1
----
-
-# 快速开始
-
-import Tabs from '@theme/Tabs';
-import TabItem from '@theme/TabItem';
-
-
-
-
-
- This is an apple 🍎
-
-
- This is an orange 🍊
-
-
- This is a banana 🍌
-
-
-
-好的,以下是对应的文件名和目录结构:
-
-- 1.md : 入门指南
- - 1.1 安装和配置.md
- - 1.2 Hello World.md
- - 1.3 架构概述.md
-- 2.md : 核心功能
- - 2.1 控制器.md
- - 2.2 过滤器.md
- - 2.3 模板引擎.md
- - 2.4 数据库访问.md
- - 2.5 缓存.md
- - 2.6 安全.md
- - 2.7 日志.md
- - 2.8 监控.md
-- 3.md : 进阶功能
- - 3.1 异步处理.md
- - 3.2 高并发支持.md
- - 3.3 集群部署.md
- - 3.4 扩展机制.md
-- 4.md : 工具支持
- - 4.1 IDEA 插件.md
- - 4.2 Maven 插件.md
- - 4.3 工具集成.md
-
-
-----
-
-好的,以下是使用英文文件名的 Redkale 文档目录结构:
-- getting-started: Getting Started
- - 1-installation-and-configuration.md: Installation and Configuration
- - 2-hello-world.md: Hello World
- - 3-architecture-overview.md: Architecture Overview
-- core-features: Core Features
- - 1-controller.md: Controller
- - 2-filter.md: Filter
- - 3-template-engine.md: Template Engine
- - 4-database-access.md: Database Access
- - 5-cache.md: Cache
- - 6-security.md: Security
- - 7-logging.md: Logging
- - 8-monitoring.md: Monitoring
-- advanced-features.md: Advanced Features
- - 1-asynchronous-processing.md: Asynchronous Processing
- - 2-high-concurrency-support.md: High Concurrency Support
- - 3-clustering-deployment.md: Clustering Deployment
- - 4-extension-mechanism.md: Extension Mechanism
-- tool-support.md: Tool Support
- - 1-idea-plugin.md: IDEA Plugin
- - 2-maven-plugin.md: Maven Plugin
- - 3-tool-integration.md: Tool Integration
-
-请注意,文件名以及目录结构只是一种规范,您可以根据实际需求进行修改和扩展。同时编写文档时要尽可能地清晰简洁、易于阅读和理解,并且遵循文档写作的标准规范和最佳实践。
-请注意,本程序只能进行文档基础目录结构的整理,具体内容需要您自己针对 Redkale 进行整理编写。另外,如有需要,您还可以进一步细分和拓展目录结构,以适应实际需求。
\ No newline at end of file
diff --git a/back/redkale/getting-started/_category_.json b/back/redkale/getting-started/_category_.json
deleted file mode 100644
index 3538283..0000000
--- a/back/redkale/getting-started/_category_.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "label": "快速开始",
- "position": 1,
- "link": {
- "type": "generated-index"
- }
-}
diff --git a/docs/admin-apis/_category_.json b/docs/admin-apis/_category_.json
new file mode 100644
index 0000000..d2af360
--- /dev/null
+++ b/docs/admin-apis/_category_.json
@@ -0,0 +1,8 @@
+{
+ "label": "管理接口 API",
+ "position": 2,
+ "link": {
+ "type": "generated-index",
+ "description": "ZHub 服务管理接口详细说明,包括服务监控、配置重载、资源清理等功能。"
+ }
+}
diff --git a/docs/admin-apis/auth-reload-api.md b/docs/admin-apis/auth-reload-api.md
new file mode 100644
index 0000000..d207b02
--- /dev/null
+++ b/docs/admin-apis/auth-reload-api.md
@@ -0,0 +1,141 @@
+---
+sidebar_position: 4
+title: 重新加载权限配置接口
+description: ZHub 权限配置重新加载接口
+---
+
+# 重新加载权限配置接口
+
+## 接口说明
+
+- **路径**: `GET /auth/reload`
+- **功能**: 重新加载 `auth.yml` 权限配置文件
+- **用途**: 修改权限配置后无需重启服务即可生效
+
+## 使用示例
+
+```bash
+# 重新加载权限配置
+curl http://127.0.0.1:711/auth/reload
+```
+
+## 使用场景
+
+- 修改了 `auth.yml` 文件中的权限配置
+- 添加或删除了用户权限
+- 修改了连接授权规则
+- 更新了角色权限设置
+
+## 操作步骤
+
+1. **修改配置**: 编辑 `auth.yml` 配置文件
+2. **执行重载**: 调用 `/auth/reload` 接口
+3. **验证生效**: 新的权限配置立即生效
+
+## 权限配置文件
+
+### auth.yml 结构
+
+权限配置存储在 `auth.yml` 文件中,主要包含以下配置:
+
+```yaml
+# 用户权限配置
+users:
+ - username: admin
+ password: admin123
+ roles: [admin]
+
+ - username: user1
+ password: user123
+ roles: [user]
+
+# 角色权限配置
+roles:
+ admin:
+ permissions:
+ - "topic:read"
+ - "topic:write"
+ - "admin:*"
+
+ user:
+ permissions:
+ - "topic:read"
+
+# 连接授权规则
+connection_rules:
+ - pattern: "admin.*"
+ required_roles: [admin]
+
+ - pattern: "user.*"
+ required_roles: [user]
+```
+
+### 配置示例
+
+```yaml
+# 添加新用户
+users:
+ - username: newuser
+ password: newpass123
+ roles: [operator]
+
+# 添加新角色
+roles:
+ operator:
+ permissions:
+ - "topic:read"
+ - "topic:write"
+ - "monitor:*"
+```
+
+## 应用场景
+
+1. **用户管理**: 添加或删除系统用户
+2. **权限调整**: 修改用户或角色的权限设置
+3. **安全策略**: 更新连接授权规则
+4. **临时权限**: 为特定操作临时调整权限
+
+## 权限类型
+
+### 主题权限
+
+- `topic:read`: 读取主题消息权限
+- `topic:write`: 发布主题消息权限
+- `topic:subscribe`: 订阅主题权限
+
+### 管理权限
+
+- `admin:*`: 所有管理权限
+- `admin:config`: 配置管理权限
+- `admin:monitor`: 监控管理权限
+
+### 系统权限
+
+- `system:*`: 系统级权限
+- `system:shutdown`: 系统关闭权限
+- `system:restart`: 系统重启权限
+
+## 注意事项
+
+:::warning 安全提醒
+- 权限配置重载会立即生效,请谨慎操作
+- 建议在非业务高峰期执行重载操作
+- 重载前请备份当前的权限配置
+- 确保不会意外撤销重要权限
+:::
+
+## 错误处理
+
+如果重载过程中出现错误:
+
+1. **配置检查**: 验证 `auth.yml` 文件格式是否正确
+2. **权限验证**: 确保配置的权限和角色有效
+3. **日志查看**: 检查服务日志中的错误信息
+4. **配置恢复**: 如有必要,恢复之前的配置文件
+
+## 安全建议
+
+1. **定期审核**: 定期审核用户权限配置
+2. **最小权限**: 遵循最小权限原则
+3. **密码策略**: 使用强密码策略
+4. **访问日志**: 记录权限相关的访问日志
diff --git a/docs/admin-apis/cleanup-api.md b/docs/admin-apis/cleanup-api.md
new file mode 100644
index 0000000..4829576
--- /dev/null
+++ b/docs/admin-apis/cleanup-api.md
@@ -0,0 +1,53 @@
+---
+sidebar_position: 2
+title: 清理内存接口
+description: ZHub 服务内存清理接口
+---
+
+# 清理内存接口
+
+## 接口说明
+
+- **路径**: `GET /_/cleanup`
+- **功能**: 清理可回收的内存资源
+- **用途**: 释放无用的主题和消息,优化内存使用
+
+## 清理条件
+
+清理满足以下条件的主题:
+
+- `subsize = 0` - 没有订阅者
+- `mcount = offset` - 没有待消费的消息
+
+## 使用示例
+
+```bash
+# 手动触发内存清理
+curl http://127.0.0.1:711/_/cleanup
+```
+
+## 返回信息
+
+接口返回清理操作的结果:
+
+- **成功**: 返回 `"+OK"`
+- **失败**: 返回错误信息
+
+**响应示例**:
+```json
+"+OK"
+```
+
+## 清理机制
+
+**手动清理**:通过调用此接口立即触发清理操作
+
+- 清理所有符合条件的主题
+- 释放相关内存资源
+
+## 应用场景
+
+1. **内存优化**: 当发现内存占用过高时手动清理
+2. **性能调优**: 在性能测试后清理测试数据
+3. **资源回收**: 清理不再使用的主题和消息
+
diff --git a/docs/admin-apis/info-api.md b/docs/admin-apis/info-api.md
new file mode 100644
index 0000000..87b90cd
--- /dev/null
+++ b/docs/admin-apis/info-api.md
@@ -0,0 +1,70 @@
+---
+sidebar_position: 1
+title: 查看注册情况接口
+description: ZHub 服务注册情况查询接口
+---
+
+# 查看注册情况接口
+
+## 接口说明
+
+- **路径**: `GET /_/info`
+- **功能**: 查看当前服务的注册情况,包括主题订阅、连接状态等信息
+- **用途**: 监控服务运行状态,排查问题
+
+## 使用示例
+
+```bash
+# 查看服务注册情况
+curl http://127.0.0.1:711/_/info
+```
+
+## 返回信息
+
+接口返回当前服务的详细状态信息,包括:
+
+- **topics**: 主题详细信息,包含每个主题的组信息
+- **topicsize**: 当前活跃的主题数量
+- **timersize**: 定时任务数量
+- **conns**: 连接信息列表,包含远程地址、组ID、订阅主题等
+- **connsize**: 当前连接数
+
+**响应示例**:
+```json
+{
+ "topics": {
+ "user.login": [
+ {
+ "name": "group1",
+ "subsize": 3,
+ "offset": 100,
+ "mcount": 120
+ }
+ ]
+ },
+ "topicsize": 25,
+ "timersize": 10,
+ "conns": [
+ {
+ "remoteaddr": "127.0.0.1:12345",
+ "groupid": "test-group",
+ "topics": ["user.*"],
+ "timers": ["timer1"],
+ "user": "admin"
+ }
+ ],
+ "connsize": 5
+}
+```
+
+## 应用场景
+
+1. **服务监控**: 定期检查服务运行状态
+2. **问题排查**: 当服务出现异常时查看详细信息
+3. **性能分析**: 了解当前的主题和连接数量
+4. **运维管理**: 评估服务负载和资源使用情况
+
+## 注意事项
+
+- 该接口为只读操作,不会修改服务状态
+- 返回的信息实时反映当前服务状态
diff --git a/docs/admin-apis/other-apis.md b/docs/admin-apis/other-apis.md
new file mode 100644
index 0000000..ce65912
--- /dev/null
+++ b/docs/admin-apis/other-apis.md
@@ -0,0 +1,34 @@
+---
+sidebar_position: 5
+title: 其他管理接口
+description: ZHub 其他管理接口说明
+---
+
+# 其他管理接口
+
+除了核心的管理接口外,ZHub 还提供了其他有用的管理接口,用于版本查询、消息发送和延时消息管理等功能。
+
+---
+
+## 版本信息接口
+
+### 接口说明
+
+- **路径**: `GET /_/version`
+- **功能**: 查看服务版本信息
+- **用途**: 确认服务版本,进行版本管理
+
+### 使用示例
+
+```bash
+# 查看服务版本
+curl http://127.0.0.1:711/_/version
+```
+
+### 返回信息
+
+返回当前 ZHub 服务的版本信息,包括:
+
+- 服务版本号
+- 构建时间
+---
diff --git a/docs/admin-apis/overview.md b/docs/admin-apis/overview.md
new file mode 100644
index 0000000..901a00d
--- /dev/null
+++ b/docs/admin-apis/overview.md
@@ -0,0 +1,61 @@
+---
+sidebar_position: 0
+title: 管理接口概览
+description: ZHub 服务管理接口总览
+---
+
+# ZHub 管理接口概览
+
+管理接口通过 HTTP 访问,默认端口 `711`。
+
+**配置**:在 `app.ini` 中修改 `[service]` 部分的 `watch` 参数
+
+## 接口列表
+
+**核心接口**:
+- `GET /_/info` - 查看服务状态
+- `GET /_/cleanup` - 清理内存
+- `GET /timer/reload` - 重载定时配置
+- `GET /auth/reload` - 重载权限配置
+
+**辅助接口**:
+- `GET /_/version` - 查看版本信息
+- `POST /message/send` - HTTP 发送消息
+- `GET /topic/delay` - 查看延时消息状态
+
+## 使用示例
+
+```bash
+# 查看服务状态
+curl http://127.0.0.1:711/_/info
+
+# 清理内存
+curl http://127.0.0.1:711/_/cleanup
+
+# 重载配置
+curl http://127.0.0.1:711/timer/reload
+curl http://127.0.0.1:711/auth/reload
+
+# 查看版本
+curl http://127.0.0.1:711/_/version
+```
+
+## 配置管理
+
+**端口配置**:
+```ini
+[service]
+watch = 0.0.0.0:711 # 管理端口
+```
+
+## 安全注意事项
+
+- 管理接口默认监听所有网络接口
+- 生产环境建议添加认证机制
+- 避免在公网环境暴露管理接口
+
+## 监控建议
+
+- 定期检查服务状态:`/_/info`
+- 监控内存使用,必要时执行清理
+- 修改配置后及时执行 reload 接口
diff --git a/docs/admin-apis/timer-reload-api.md b/docs/admin-apis/timer-reload-api.md
new file mode 100644
index 0000000..8a841c6
--- /dev/null
+++ b/docs/admin-apis/timer-reload-api.md
@@ -0,0 +1,51 @@
+---
+sidebar_position: 3
+title: 重新加载定时调度配置接口
+description: ZHub 定时调度配置重新加载接口
+---
+
+# 重新加载定时调度配置接口
+
+## 接口说明
+
+- **路径**: `GET /timer/reload`
+- **功能**: 重新加载数据库中的定时调度配置
+- **用途**: 当修改了数据库中的 timer 配置后,无需重启服务即可生效
+
+## 使用示例
+
+```bash
+# 重新加载定时调度配置
+curl http://127.0.0.1:711/timer/reload
+```
+
+## 使用场景
+
+- 修改了 `tasktimer` 表中的定时任务配置
+- 添加或删除了定时任务
+- 修改了定时任务的执行表达式
+- 更新了定时任务的执行参数
+
+## 操作步骤
+
+1. **修改配置**: 在数据库中修改 `zhub.tasktimer` 表
+2. **执行重载**: 调用 `/timer/reload` 接口
+3. **验证生效**: 新的定时配置立即生效
+
+## 数据库配置
+
+### tasktimer 表结构
+
+定时任务配置存储在 `zhub.tasktimer` 表中,包含以下关键字段:
+
+- `task_name`: 任务名称
+- `cron_expression`: Cron 表达式
+- `task_class`: 任务执行类
+- `enabled`: 是否启用
+- `parameters`: 任务参数
+
+## 注意事项
+
+:::info 重要提醒
+- 重载操作会立即生效,请确保配置正确
+:::
\ No newline at end of file
diff --git a/docs/intro.md b/docs/intro.md
index 29ee71e..c5deec4 100644
--- a/docs/intro.md
+++ b/docs/intro.md
@@ -1,90 +1,121 @@
---
+title: 快速上手
+description: ZHub 轻量级消息中间件快速入门指南,包含安装配置、基础使用和功能特性介绍
sidebar_position: 1
---
# ZHub 快速上手
## 概述
-> zhub是⼀个⾼性能事件发布订阅服务组件,功能丰富,包含发布-订阅、⼴播消息、延时消息、
-Rpc调⽤、分布式定时调度、分布式锁,运⾏包仅有1M+;低服务资源消费,初始启动内存 10M-。
+ZHub 是一个轻量级消息中间件,支持发布订阅、广播消息、延时消息、RPC调用等功能。运行包仅1M+,启动内存10M-。
+
+**核心特性**:
+- 消息顺序保证:单个主题内严格按发送顺序处理
+- 高性能:内存处理,支持高并发
+- 轻量级:运行包1M+,启动内存10M-

---
-## 开始 搭建 zhub 服务
-> 让我们在 **5到10分钟内完成 zhub 中间件安装、集成、测试**.
+## 搭建 ZHub 服务
### 下载软件包
-- [zhub.zip (点击下载)](https://img.1216.top/docs/zhub/zhub.zip) 包含以下内容:
- - `zhub-client-0.1.1.dev.jar` 常规Java 项目驱动包
- - `zhub-client-spring-0.1.1.jar` springboot 项目驱动包
- - `zhub.exe` Window 运行包
- - `zhub.sh` Linux 运行包
- - `zhub` Mac 运行包
- - `app.ini` 配置文件
- 
+**下载地址**: [https://zhub.dev/release/latest/](https://zhub.dev/release/latest/)
+
+**支持平台**:
+- `zhub-linux-amd64.tar` - Linux AMD64
+- `zhub-linux-arm64.tar` - Linux ARM64
+- `zhub-win-amd64.tar` - Windows AMD64
+
+**目录结构**:
+```
+zhub/
+├── zhub.sh # 可执行文件
+├── app.ini # 服务配置
+└── auth.yml # 权限配置(可选)
+```
### 配置 app.ini
-```bash
-# app.ini
+```ini
[service]
-watch=0.0.0.0:711 # 服务管理端口
+watch=0.0.0.0:711 # 管理端口
addr=0.0.0.0:1216 # 服务端口
-auth=0 # 是否开启连接授权 0不开启、1开启
+auth=0 # 权限验证 0关闭/1开启
[data]
dir=./data # 数据目录
[log]
-handlers=console # console|file
-level=debug # info|debug|error
-file=zhub.log
-
-[ztimer] # ztimer 配置 (可选,如果不使用定时调度则可不配置)
-# db.addr=127.0.0.1:3306 # timer 使用的MySql数据库配置
-# db.user=root
-# db.password=123456
-# db.database=zhub
+handlers=console # 日志输出
+level=debug # 日志级别
```
+**重要**:
+- 客户端 `appid` 必须唯一
+- 生产环境建议开启权限验证
+
+**性能注意事项**:
+- 服务端通道容量500条,满时消息会被丢弃
+- 定期执行内存清理:`curl http://127.0.0.1:711/_/cleanup`
+- 监控服务状态:`curl http://127.0.0.1:711/_/info`
+
---
-### 初始化 ztimer 数据库 (可选,如果不使用定时调度则不需要配置)
+### 初始化数据库(可选, 定时调度调度任务配置)
+**MySQL**:
```sql
CREATE DATABASE zhub;
CREATE TABLE `zhub`.`tasktimer` (
- `timerid` varchar(64) NOT NULL DEFAULT '' COMMENT '[主键]UUID',
- `name` varchar(32) NOT NULL DEFAULT '' COMMENT '[任务名称]',
- `expr` varchar(32) NOT NULL DEFAULT '' COMMENT '[时间表达式]',
- `single` int NOT NULL DEFAULT '1' COMMENT '[单实例消费]1单对象,0不限',
- `remark` varchar(128) NOT NULL DEFAULT '' COMMENT '[备注]',
- `status` smallint NOT NULL DEFAULT '10' COMMENT '[状态]10启用,60停用',
- PRIMARY KEY (`timerid`) USING BTREE
-) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-# 初始化 四个定时任务配置, 订阅名称分别为 T:A、T:B、T:C、T:D
-INSERT INTO `zhub`.`tasktimer` (`timerid`, `name`, `expr`, `single`, `remark`, `status`) VALUES
- ('T1', 'T:A', '*/5 * * * * ?', 1, '每5秒执行一次', 10),
- ('T2', 'T:B', '15s', 1, '每15秒执行一次', 10),
- ('T3', 'T:C', '0 0 0 * * 1', 0, '每周一00:00执行', 10),
- ('T4', 'T:D', '0 0 24 * * ?', 1, '每天00:00执行', 10);
+ `timerid` varchar(64) NOT NULL DEFAULT '' PRIMARY KEY COMMENT '任务ID',
+ `name` varchar(32) NOT NULL DEFAULT '' COMMENT '任务名称',
+ `expr` varchar(32) NOT NULL DEFAULT '' COMMENT '时间表达式',
+ `single` int NOT NULL DEFAULT '1' COMMENT '单实例:1是,0否',
+ `remark` varchar(128) NOT NULL DEFAULT '' COMMENT '备注',
+ `status` smallint NOT NULL DEFAULT '10' COMMENT '状态:10启用,60停用'
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='定时任务表';
+```
+
+**PostgreSQL**:
+```sql
+CREATE DATABASE zhub;
+CREATE TABLE tasktimer (
+ timerid varchar(64) NOT NULL DEFAULT '' PRIMARY KEY,
+ name varchar(32) NOT NULL DEFAULT '',
+ expr varchar(32) NOT NULL DEFAULT '',
+ single int NOT NULL DEFAULT 1,
+ remark varchar(128) NOT NULL DEFAULT '',
+ status smallint NOT NULL DEFAULT 10
+);
+
+-- 添加表和字段注释
+COMMENT ON TABLE tasktimer IS '定时任务表';
+COMMENT ON COLUMN tasktimer.timerid IS '任务ID';
+COMMENT ON COLUMN tasktimer.name IS '任务名称';
+COMMENT ON COLUMN tasktimer.expr IS '时间表达式';
+COMMENT ON COLUMN tasktimer.single IS '单实例:1是,0否';
+COMMENT ON COLUMN tasktimer.remark IS '备注';
+COMMENT ON COLUMN tasktimer.status IS '状态:10启用,60停用';
```
### 启动服务
```bash
-# window
-./zhub.exe
-# linux (添加执行权限 chmod +x ./zhub.sh)
-./zhub.sh
+# Linux/Mac
+chmod +x ./zhub.sh && ./zhub.sh
+
+# Windows
+# 解压后直接运行
```
+
+**端口**:管理端口 711,服务端口 1216
---
## 连接使用
-### 导入连接驱动 (根据不同的项目选择不同的导入方式)
+### 导入依赖
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
@@ -93,7 +124,7 @@ import TabItem from '@theme/TabItem';
```xml
-
+
maven-nexus
@@ -105,9 +136,9 @@ import TabItem from '@theme/TabItem';
- net.tccn
+ dev.zhub
zhub-client
- 0.1.1.dev
+ 0.1.0424.dev
```
@@ -116,7 +147,7 @@ import TabItem from '@theme/TabItem';
```xml
-
+
maven-nexus
@@ -126,11 +157,11 @@ import TabItem from '@theme/TabItem';
-
+
- net.tccn
+ dev.zhub
zhub-client-spring
- 0.1.1.dev
+ 0.1.0424.dev
```
@@ -139,7 +170,7 @@ import TabItem from '@theme/TabItem';
```xml
-
+
maven-nexus
@@ -149,11 +180,11 @@ import TabItem from '@theme/TabItem';
-
+
- net.tccn
+ dev.zhub
zhub-client-redkale
- 0.1.1.dev
+ 0.1.0424.dev
```
@@ -167,19 +198,20 @@ import TabItem from '@theme/TabItem';
```
// 参数说明:①连接地址ip+端口, ②消费者组名称,③连接APPID (接入的多个客户端使用不同的连接APPID)
- ZHubClient zhub = new ZHubClient("127.0.0.1:1216", "groupid-x", "appid-x");
+ // 开启权限验证时添加第四个参数:授权码
+ ZHubClient zhub = new ZHubClient("127.0.0.1:1216", "groupid-x", "appid-x", "token-12345");
```
-```yml
+```yaml
# application.yml
zhub:
- addr: 47.107.112.45:1216
+ addr: 127.0.0.1:1216
groupid: groupid-x
appid: zhub_demo_1
- # auth: token-12345 # 启用 auth情况下接入验权配置
+ auth: token-12345 # 开启权限验证时配置授权码
```
```java
// 自动注入连接对象
@@ -189,10 +221,10 @@ zhub:
-```yaml
+```properties
# source.properties
redkale.cluster.zhub[zhub].addr = 127.0.0.1:1216
-redkale.cluster.zhub[zhub].auth = token-12345
+redkale.cluster.zhub[zhub].auth = token-12345 # 开启权限验证时配置授权码
redkale.cluster.zhub[zhub].groupid = zcore-zhub
# redkale.cluster.zhub[zhub].appid = zhub_demo_1 # (无需配置,取 redklae 配置的 appname)
```
@@ -206,68 +238,52 @@ redkale.cluster.zhub[zhub].groupid = zcore-zhub
---
-### 使用 zhub 收发消息
-> 通过上面的操作,我们已经得到了一个 zhub 的连接实例,下面来看看具体的使用
->
+### 快速体验
-1、消息的发布-订阅
+#### 1. 消息发布订阅
```java
- zhub.subscribe("topic-a", x -> {
- System.out.println("接收到 a 事件:" + x);
- });
+// 订阅消息
+zhub.subscribe("topic-a", x -> {
+ System.out.println("接收到消息:" + x);
+});
+
+// 发布消息
+zhub.publish("topic-a", "Hello ZHub!");
```
+
+#### 2. RPC 远程调用
```java
- zhub.publish("topic-a", "123");
+// 服务端:提供 RPC 服务
+zhub.rpcSubscribe("user.getInfo", IType.STRING, request -> {
+ String userId = request.getValue();
+ return request.render("用户信息: " + userId);
+});
+
+// 客户端:调用 RPC 服务
+RpcResult result = zhub.rpc("user.getInfo", "user123", IType.STRING);
+System.out.println("RPC 结果: " + result.getResult());
```
-2、rpc的订阅-调用
+
+#### 3. 其他功能
```java
- zhub.rpcSubscribe("rpc-b", IType.STRING, r -> {
- String str = r.getValue();
- System.out.println("接收到 b 事件:" + str);
- return r.render("接收到 b 事件:" + str);
- });
-```
-```java
- RpcResult rpcResult = zhub.rpc("rpc-b", "hello rpc", IType.STRING);
- String result = rpcResult.getResult();
- System.out.println("rpc result:" + result);
-```
-3、广播消息
-```java
- zhub.broadcast("topic-a", "123");
-```
-4、延时消息
-```java
- zhub.delay("topic-a", "123", 1000 * 60 * 5);
-```
-5、定时调度
-```java
- zhub.timer("T:A", () -> {
- System.out.println("收到定时调度事件:T:A");
- });
-```
-6、分布式锁
-```java
- // 获取锁,直到索取到锁后返回
- Lock lock = zhub.lock("lock-a", 5);
- try {
- System.out.println("获取到锁");
- } finally {
- lock.unLock();
- }
-```
-```java
- // 尝试获取锁,立即返回
- Lock lock = zhub.tryLock("lock-a", 5);
- if (!lock.success()) {
- System.out.println("未获取到锁");
- return;
- }
-
- // 获取到锁
- try {
- System.out.println("获取到锁");
- } finally {
- lock.unLock();
- }
+// 广播消息
+zhub.broadcast("topic", "message");
+
+// 延时消息
+zhub.delay("topic", "message", 5000);
```
+**详细文档**:
+- [发布订阅](./tutorial-basics/pub-sub.md)
+- [广播与延时消息](./tutorial-basics/broadcast-delay.md)
+- [RPC 远程调用](./tutorial-basics/rpc.md)
+
+---
+
+## 管理接口
+
+- `GET /_/info` - 查看服务状态
+- `GET /_/cleanup` - 清理内存
+- `GET /timer/reload` - 重载定时配置
+- `GET /auth/reload` - 重载权限配置
+
+详细说明:[管理接口 API](./admin-apis/overview.md)
\ No newline at end of file
diff --git a/docs/oth/_category_.json b/docs/oth/_category_.json
index 75118bc..536944e 100644
--- a/docs/oth/_category_.json
+++ b/docs/oth/_category_.json
@@ -3,6 +3,6 @@
"position": 5,
"link": {
"type": "generated-index",
- "description": "这里存放了各种常用的工具。"
+ "description": "ZHub 相关工具和概念,包含类型令牌、微服务架构等"
}
}
diff --git a/docs/oth/a.md b/docs/oth/a.md
deleted file mode 100644
index 201ba4a..0000000
--- a/docs/oth/a.md
+++ /dev/null
@@ -1,18 +0,0 @@
----
-sidebar_position: 9
----
-
-# 一些命令
-
-
-```shell title='在 Windows 环境下,项目打包成 zip 文件:'
-# rem 请将“my-site”替换为您想要命名的 zip 文件名称,这将创建一个名为 "my-site.zip" 的 zip 文件。
-powershell Compress-Archive -Path build -DestinationPath my-site.zip
-```
-
-```shell title='docusaurus 常用命令'
-pnpm run build # 构建
-pnpm run start # 启动
-pnpm run serve # 启动(服务模式)
-
-```
diff --git a/docs/oth/type-token.md b/docs/oth/type-token.md
index 5650ca6..54670ab 100644
--- a/docs/oth/type-token.md
+++ b/docs/oth/type-token.md
@@ -1,10 +1,14 @@
---
sidebar_position: 1
+title: IType 类型定义
+description: ZHub 客户端 IType 接口类型定义
---
-# IType
+# IType 类型定义
-> IType 中实现的 TypeToken
+IType 接口提供了 ZHub 客户端中常用的类型定义,用于 RPC 调用和消息订阅时的类型安全。
+
+## 接口定义
```java
package dev.zhub;
@@ -24,6 +28,49 @@ public interface IType {
}
```
+## 使用示例
+
+### RPC 调用
+```java
+// 字符串类型 RPC
+RpcResult result = zhub.rpc("user.getInfo", "user123", IType.STRING);
+
+// 整数类型 RPC
+RpcResult count = zhub.rpc("user.getCount", "group1", IType.INT);
+
+// Map 类型 RPC
+RpcResult