chassis/README.md

65 lines
1.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# chassis <ˈʃæsi>
chassis <ˈʃæsi> n. 底盘,底架
仓库名寓意服务的底盘,基础库。搭建微服务底盘是为了简化服务的创建过程,同时确保开发者遵循这套开发标准。
## 包含的特性
### 已包含
- 模板代码
- nameko 微服务
- apiflask Web 服务
- rocketry 定时任务服务
- 服务注册和发现 (RabbitMQ)
- 可观测 Observability
- Metrics
- Statsd + Prometheus + Grafana
- Logging
- fluentd + ELK
- Error Reporting
- Sentry
- 数据存储相关 utils
- Sqlalchemy
- 连接池
- 读写分离
### TODO
- 可观测 Observability
- Tracing
- OpenTelemetry
- 事务
- 基于开源库 DTM 实现 Saga 模式
- 高可用
- 重试
- 断路器
- 数据存储相关 utils
- Sqlalchemy
- 数据库迁移
- Alembic
- Redis
- 连接池
- ElasticSearch
- 全局配置服务
## 实现的功能
- 服务注册和发现(RabbitMQ)
- 同步/异步传输(RabbitMQ)
- 负载均衡RabbitMQ
- 限流降级(消息确认+断路器)
- 健康检查
- 通过可观测实现Metrics + Logging + Tracing + Error Reporting)
## 安装方法
基础代码库:
`python3 -m pip install --trusted-host=gitea.bearcatlog.com git+https://gitea.bearcatlog.com/BryantStudio/chassis.git@main`
基础代码库依赖的服务:
`python3 -m pip install --trusted-host=gitea.bearcatlog.com git+https://gitea.bearcatlog.com/BryantStudio/chassis-agent.git@main`