feat: add generic queue and subscription retirement
This commit is contained in:
15
README.md
15
README.md
@@ -6,7 +6,7 @@
|
||||
- **Weave · 织流**:研发定义并发布流程,支持顺序、并行、条件分支、等待信号、有界查询和人工恢复。
|
||||
- **Console**:账号密码登录的管理页面,按应用与环境查看任务、计划、流程、结果交付及归档作业。
|
||||
|
||||
主分支:`main`。当前版本:**`v0.1.1`**。源码、SDK 和 Outbox 适配包采用固定版本发布,已发布标签不覆盖。变更见 [CHANGELOG](CHANGELOG.md)。
|
||||
主分支:`main`。当前版本:**`v0.1.2`**。源码、SDK 和 Outbox 适配包采用固定版本发布,已发布标签不覆盖。变更见 [CHANGELOG](CHANGELOG.md)。
|
||||
|
||||
## 从这里开始
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
| 使用 Docker 启动,后续接入域名 | [Docker 与域名部署](#docker-与域名部署) |
|
||||
| 了解全部能力和用法 | [功能一览](#功能一览) |
|
||||
| 业务 Go 项目接入 | [SDK 怎么调用](#sdk-怎么调用) |
|
||||
| 直接运行完整场景 | [examples:27 个可运行示例](examples/README.md) |
|
||||
| 直接运行完整场景 | [examples:28 个可运行示例](examples/README.md) |
|
||||
| 嵌入现有 HTTP 服务 | [HTTP + Outbox + Worker + Inbox](examples/http-service/README.md) |
|
||||
| 查字段、错误码、权限及协议 | [HTTP / WebSocket API](docs/api/README.md)、[Go SDK 手册](docs/sdk/README.md) |
|
||||
| 配置、排障、备份、发布 | [配置与运维](#配置与运维)、[运行手册](docs/20-operations-runbook.md) |
|
||||
@@ -36,6 +36,7 @@
|
||||
| 安全重试 | 冻结次数、退避与总时限;明确可重试失败自动再执行,未知效果按安全策略核查 | [retry](examples/retry/README.md) · [重试策略](docs/api/retries.md) |
|
||||
| 取消 | `CancelTask` 保存取消意图;运行中的处理器配合停止并结清 | [cancellation](examples/cancellation/README.md) |
|
||||
| 定时计划 | Cron / 固定间隔、时区、不可变版本、漏跑策略、暂停/恢复和触发历史 | [schedules](examples/schedules/README.md) · [计划接口](docs/api/schedules.md) |
|
||||
| 资源退役 | 结清后退役订阅与队列,释放订阅名额,保留历史和审计 | [运行示例](sdk/go/examples/resource-lifecycle/README.md) · [接口与规则](docs/api/resource-retirement.md) |
|
||||
| 队列资源控制 | 创建/配置队列并发、开始速率、积压上限和暂停;满额返回背压 | [resources](examples/resources/README.md) · [队列接口](docs/api/queues.md) |
|
||||
| 应用共享配额 | 同一应用的多个命名空间/队列共享总额度 | [application-resources](examples/application-resources/README.md) |
|
||||
| 资源键互斥 | `ConcurrencyKey` 协调跨队列同资源任务,资源端核验递增许可序号 | [keyed-concurrency](examples/keyed-concurrency/README.md) |
|
||||
@@ -76,14 +77,14 @@
|
||||
### 1. 获取代码并迁移数据库
|
||||
|
||||
```sh
|
||||
git clone --branch v0.1.1 https://git.yuntuo.hk/k2safe/orbit.git
|
||||
git clone --branch v0.1.2 https://git.yuntuo.hk/k2safe/orbit.git
|
||||
cd orbit
|
||||
export ORBIT_MYSQL_DSN='user:password@tcp(127.0.0.1:3306)/orbit'
|
||||
export ORBIT_HTTP_ADDR='127.0.0.1:8080'
|
||||
go run ./cmd/orbit-migrate up
|
||||
```
|
||||
|
||||
DSN 替换为实际账号密码。`--branch v0.1.1` 检出固定发布版本;参与开发使用 `git switch main`。已有库先备份,再按[升级与发布手册](docs/20-operations-runbook.md)停旧写节点、迁移和核验;不修改已应用的迁移文件。
|
||||
DSN 替换为实际账号密码。`--branch v0.1.2` 检出固定发布版本;参与开发使用 `git switch main`。已有库先备份,再按[升级与发布手册](docs/20-operations-runbook.md)停旧写节点、迁移和核验;不修改已应用的迁移文件。
|
||||
|
||||
### 2. 一次性创建示例资源与管理员
|
||||
|
||||
@@ -146,12 +147,12 @@ worker_drained=true started=3 confirmed=3 running=0
|
||||
在自己的业务项目中执行:
|
||||
|
||||
```sh
|
||||
go get git.yuntuo.hk/k2safe/orbit/sdk/go@v0.1.1
|
||||
go get git.yuntuo.hk/k2safe/orbit/sdk/go@v0.1.2
|
||||
# 业务事务需要 MySQL Outbox 时再安装:
|
||||
go get git.yuntuo.hk/k2safe/orbit/adapters/outbox/mysql@v0.1.1
|
||||
```
|
||||
|
||||
无需本地源码或 `replace`。SDK 是独立 Go module,只依赖标准库和 WebSocket 客户端;MySQL 驱动属于可选适配包。子模块的 Git 标签分别为 `sdk/go/v0.1.1` 和 `adapters/outbox/mysql/v0.1.1`。
|
||||
无需本地源码或 `replace`。SDK 是独立 Go module,只依赖标准库和 WebSocket 客户端;MySQL 驱动属于可选适配包。子模块的 Git 标签分别为 `sdk/go/v0.1.2` 和 `adapters/outbox/mysql/v0.1.1`。
|
||||
|
||||
### 提交、执行、接收结果
|
||||
|
||||
@@ -277,6 +278,6 @@ make console-e2e # 控制台端到端回归
|
||||
|
||||
集成测试需要 Docker、Python 3 和 OpenSSL 等工具,由脚本创建独立临时数据库并清理自建容器。生产容量与故障域验收另见[交付清单](docs/release-checklist.md);有限样本不能代表百万企业规模的生产容量。
|
||||
|
||||
`v0.1.1` 包含账号密码控制台、归档策略/周期作业、Outbox 公共包、HTTP 生命周期示例及统一示例目录;与上一版本的升级说明和验证结果见 [CHANGELOG](CHANGELOG.md) 与 [发布记录](docs/reports/v0.1.1-release.md)。当前未提供源数据删除、其他数据库 Outbox 适配,也不把单机或隔离环境多节点测试等同于生产跨故障域高可用验收。
|
||||
`v0.1.2` 新增通用资源退役;此前已包含账号密码控制台、归档策略/周期作业、Outbox 公共包、HTTP 生命周期示例及统一示例目录;与上一版本的升级说明和验证结果见 [CHANGELOG](CHANGELOG.md) 与 [本次验证](docs/reports/resource-retirement.md)。当前未提供源数据删除、其他数据库 Outbox 适配,也不把单机或隔离环境多节点测试等同于生产跨故障域高可用验收。
|
||||
|
||||
更多资料:[设计文档](docs/README.md) · [持续开发计划](docs/08-development-plan.md) · [接口目录](docs/api/README.md) · [示例目录](examples/README.md) · [发布规则](docs/sdk/release.md)。
|
||||
|
||||
Reference in New Issue
Block a user