拆分单体应用:从监控到微服务架构转型
1. 监控与数据洞察
在开发和维护应用程序时,了解每个端点的使用情况和性能至关重要。通过 Prometheus,我们可以清晰地看到 API 中每个端点被查询的次数以及这些请求所花费的时间。更多关于查询 Prometheus 的信息可以参考:https://prometheus.io/docs/prometheus/latest/getting_started/。
除了基本的查询次数和响应时间,我们还可以添加额外的指标,如 CPU 时间使用量、内存消耗量以及等待其他网络调用完成的时间。这些数据有助于我们精确地找出应用程序中哪些部分消耗最多的资源,哪些部分在扩展时存在困难。
2. 日志记录的重要性
虽然数字可以告诉我们很多关于应用程序内部发生的事情,但它们并不能讲述整个故事。日志记录是记录一些文本或数据的行为,这些记录并非软件基本操作的一部分,但却非常重要。即使没有日志消息输出,应用程序也可以正常运行。
当我们发现系统中某些部分运行缓慢时,我们会想知道“它到底在做什么?”阅读代码只能提供部分答案,而日志记录可以通过记录所做的决策、发送的数据以及遇到的错误来提供其余的信息。
不过,记录所有内容会增加应用程序的 I/O 需求,无论是通过网络发送消息还是在本地写入文件。因此,我们需要仔细考虑记录哪些内容以及为什么要记录。特别是当日志消息可能包含敏感信息(如个人详细信息或密码)时,对于生产环境中的服务,应尽可能对日志进行清理,去除任何可能泄露个人数据的内容。
3. Python 日志记录
Python 提供了强大的日志记录选项,可以自动格式化消息并
超级会员免费看
订阅专栏 解锁全文
10万+

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



