flashcatcloud / categraf

one-stop telemetry collector for nightingale
https://flashcat.cloud/docs/
MIT License
758 stars 237 forks source link

perf: procstat - Cached md5 for same exe #985

Closed zzmark closed 1 week ago

zzmark commented 1 week ago

v0.3.60 引入的 md5Sum 在相同进程大量匹配的情况下,需要计算多次 md5,导致 Gather 性能低下

优化方案: 每轮Gather创建缓存。同一个 exe 每轮次只 md5Sum 一次。 认定为每次刮取期间内二进制不会被篡改。 Gather内无需考虑 cache 周期

适用范围:

不适用于:

zzmark commented 1 week ago

使用此插件匹配进程,md5计算消耗大,有以下可能

前两种情况可以靠cache解决, 第二种情况较为少见,需要复杂的cache才能缓解,而且此类系统一般复杂度很高,会有专用的监控 接口/插件/软件,就不考虑了

kongfei605 commented 1 week ago

Thank you @zzmark