zoukankan      html  css  js  c++  java
  • Flink集群基础知识

    Flink集群架构分析

             

               

     Flink独立部署模式

             

                

                   

     Flink HA部署模式

                  

                      

    Flink on Yarn部署

                 

     Flink TaskManager自动宕机

          

          flink taskmanager进程shutdown的日志,从日志里能够看到,进程shutdown的缘由是在中止job的时候该taskmanager上运行的某个task180多秒都没有响应中止指令,所以taskmanager本身把本身杀死了

          在编写可能会阻塞的flink算子时,应该考虑job被cancle时的线程中断问题.例如,使用带超时的api,超时后线程能够返回并检查是否中断,若是中断了就跳出阻塞等待,使得task执行线程有机会处理cancle,避免taskmanager杀死本身

         在standalone cluster模式下taskmanager杀死后,jobmanager是没法启动它的,这会致使其余job被重启,集群slot变少也可能会致使job没法启动.相比之下,flink on yarn会好一点,而且single-job模式至关于每一个job都有一个集群,job间隔离比较好,job中止的时候taskmanager和jobmanager的进程都退出了.而standalone cluster模式进程是没有中止的,也就是说job若是开启了线程,在standalone cluster模式下必定要在job中止的时候终止这些线程,不然,线程不会随job中止而中止,他会一直存在,因为线程栈是gc root,线程引用的内存资源也没法释放,形成泄漏

  • 相关阅读:
    介绍Collection框架的结构;Collection 和 Collections的区别
    Mybites和hibernate的优缺点和区别2
    Mybites和hibernate的优缺点和区别
    AJAX如何获取从前台传递过来的数据然后在通过servle传递给后台
    list map set 集合的区别
    乐观锁和悲观锁的区别
    python生产消费Kafka
    python类型转换
    python实现远程方法调用
    Scala常用数据结构
  • 原文地址:https://www.cnblogs.com/yxh168/p/15310889.html
Copyright © 2011-2022 走看看