关于Flink作业的负载监控 task-load指标

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

关于Flink作业的负载监控 task-load指标

13051111332


Hi,everyone:
    滴滴的一篇文档中提到:


             "我们一直希望能精确衡量任务的负载状况,使用反压指标指标只能粗略的判断任务的资源够或者不够。            结合新版的 Mailbox 线程模型,所有互斥操作全部运行在 TaskThread 中,只需统计出线程的占用时间,就可以精确计算任务负载的百分比。            未来可以使用指标进行任务的资源推荐,让任务负载维持在一个比较健康的水平”
  关于统计出线程的占用时间,这个具体该怎么做呢?


Reply | Threaded
Open this post in threaded view
|

Re:关于Flink作业的负载监控 task-load指标

hailongwang
Hi,
    在 `MailboxProcessor#runMailboxLoop` 中分别计算 default mailbox actions(处理业务数据) 和 event mailbox actions(checkpoint 同步阶段、timer等) 的时间占比,假设分别为t1,t2,都介于[0,1]之间。
那么理论上 t1 + t2 + idle的占比 = 1;这样可以根据 t1, t2 的值来判断单个线程的 CPU 是否跑满了。


Best,
Hailong

在 2021-01-29 12:25:56,"13051111332" <[hidden email]> 写道:

>
>
>Hi,everyone:
>    滴滴的一篇文档中提到:
>
>
>             "我们一直希望能精确衡量任务的负载状况,使用反压指标指标只能粗略的判断任务的资源够或者不够。            结合新版的 Mailbox 线程模型,所有互斥操作全部运行在 TaskThread 中,只需统计出线程的占用时间,就可以精确计算任务负载的百分比。            未来可以使用指标进行任务的资源推荐,让任务负载维持在一个比较健康的水平”
>  关于统计出线程的占用时间,这个具体该怎么做呢?
>
>