# chassis <ˈʃæsi> chassis <ˈʃæsi> n. 底盘,底架 仓库名寓意服务的底盘,基础库。搭建微服务底盘是为了简化服务的创建过程,同时确保开发者遵循这套开发标准。 ## 包含的特性 1. 模板代码 - nameko 微服务 - apiflask Web 服务 - rocketry 定时任务服务 2. 事务 - 实现 Saga 模式 3. 查询 4. 高可用 1. 5. 可观测 Observability 1. Metrics - Statsd + Prometheus + Grafana) 2. Logging - ELK 3. Tracing - TODO, Maybe OpenTelemetry 4. Error Reporting - Sentry 6. 数据存储相关 utils 1. Sqlalchemy - 连接池 - 读写分离 2. Redis - 连接池 3. ElasticSearch 4. 数据库迁移 - Alembic 7. 服务注册和发现 (RabbitMQ) 8. 配置获取 (TODO) ## 实现的功能 - 服务注册和发现(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`