最近小土阅读了《生产微服务》这本书,摘录了生产就绪check列表和评估你微服务的清单。一个服务从0-1的生产过程。很值得参考。
一个生产就绪的微服务是可伸缩且高性能的
一个得到恰当监控的生产就绪的微服务
它的关键性度量指标在主机级别、基础设施级别和微服务级别得到识别和监控 。
它有能够反映微服务过去状态的日志。
它的仪表盘包含了所有的关键性度量指标,而且很容易读懂 。
它的告警具有可操作性,并且定义了阈值 。
有一个专门的轮班待命机制负责监控微服务,并对事故和中断做出响应 。
有一个清晰的、良好定义的标准待命流程,用于处理事故和中断 。
它有详尽的文档 。
它的文档会定期更新。
它的文档包含了如下内容:
微服务描述
架构图
待命人员的信息
重要信息的链接
开发上手指南
服务请求消息流
端点的信息
依赖项的信息
运行手册,以及常见问题答疑 。
它为开发人员、团队和组织所理解 。
它符合生产就绪标准并且满足相关要求 。
它的架构经过了反复的评审 。
微服务生态系统是否有一个标准化的部署管道?
部署管道里是否有 full staging 或 partial staging 阶段?
staging 环境对生产环境有怎样的访问权限?
部署管道里是否有 canary 阶段?
canary 阶段是否有足够的时间来捕捉所有的缺陷?
canary 阶段是否准确地模拟了生产环境的业务流量?
canary和生产环境的服务端口是一样的吗?
生产环境的部署是一步到位还是循序渐进的?
对于紧急情况,是否存在直接跳过 staging 和 canary 阶段的情况?
微服务是否以可伸缩和高性能的方式处理数据?
微服务需要存储什么类型的数据?
微服务的数据需要怎样的 schema?
每秒需要处理多少个事务?
微服务需要更高的读写性能吗?
微服务是读密集、写密集还是两者兼顾?
微服务的数据库可以横向或纵向扩展吗?它是可复制或者可分区的吗?
微服务使用的是专门的还是共 享 的数据库? 微服务是如何存储和处理测试数据的?
团队里的每个开发人员是否都能回答与他们的微服务的生产就绪相关的问题?
微服务是否遵循了 一 系列原则和标准?
对于新的微服务,是否有RFC 流程?
已有的微服务是否经常得到评审和审计?
是否每个微服务团队都举行架构评审?
是否有生产就绪的审计流程?
是否有生产就绪路线图用于把微服务带向生产就绪的状态?
生产就绪标准是否推动了组织的 OKR? 生产就绪流程是自动化的吗?
欢迎关注Go招聘公众号,获取Go专题、大厂内推、面经、简历、股文等相关资料可回复和点击导航查阅。
Copyright© 2013-2020
All Rights Reserved 京ICP备2023019179号-8