微服务入门与Spring Boot开发指南
一、微服务面临的挑战及设计模式
1.1 中央配置问题
在微服务架构中,更新配置并确保所有受影响的微服务实例正确更新是一个挑战。解决方案是添加一个配置服务器组件到系统中,用于存储所有微服务的配置。这样可以将一组微服务的配置信息存储在一个地方,并针对不同环境(如开发、测试、质量保证和生产环境)设置不同的配置。
1.2 集中日志分析
1.2.1 问题
传统上,应用程序将日志事件写入运行该应用程序的服务器的本地文件系统中的日志文件。在微服务架构中,由于有大量部署在众多小型服务器上的微服务实例,会面临以下问题:
- 如何在每个微服务实例写入自己的本地日志文件时,全面了解系统的运行情况?
- 如何发现哪些微服务实例出现问题并开始在日志文件中写入错误消息?
- 如果最终用户开始报告问题,如何找到相关的日志消息,即如何确定哪个微服务实例是问题的根源?
1.2.2 解决方案
添加一个能够管理集中日志记录的新组件,该组件应具备以下能力:
- 检测新的微服务实例并收集其日志事件。
- 以结构化和可搜索的方式在中央数据库中解释和存储日志事件。
- 提供用于查询和分析日志事件的API和图形工具。
1.2.3 解决方案要求
- 微服务将日志事件流式传输到标准系统输出(stdout),这样比将日志事件写入特定于微服务的日志文件更容易让日志收集器找到日志事件。
- 微服务使用分布式跟踪设计模式中描述的关联ID标记日志事件。
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



