Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache flink 如果不同的作业可以在同一工人中的不同分离流程中运行,是否会更稳定?_Apache Flink_Flink Streaming - Fatal编程技术网

Apache flink 如果不同的作业可以在同一工人中的不同分离流程中运行,是否会更稳定?

Apache flink 如果不同的作业可以在同一工人中的不同分离流程中运行,是否会更稳定?,apache-flink,flink-streaming,Apache Flink,Flink Streaming,从Flink中我们知道“每个工作者(TaskManager)都是一个JVM进程,可以在单独的线程中执行一个或多个子任务” 这意味着每个TaskManager只有一个进程,因此,如果在同一个TaskManager中安排了两个作业(意味着它们都在同一个进程中运行),则它们会相互影响。也就是说,一个作业的STW GC也会导致另一个作业的暂停,而导致进程终止的一个作业的致命错误会影响所有其他作业,那么,为什么不让不同的作业在不同的进程上运行以避免上述问题呢?我认为区别在于线程共享相同的内存空间。。有了J

从Flink中我们知道“每个工作者(TaskManager)都是一个JVM进程,可以在单独的线程中执行一个或多个子任务”


这意味着每个TaskManager只有一个进程,因此,如果在同一个TaskManager中安排了两个作业(意味着它们都在同一个进程中运行),则它们会相互影响。也就是说,一个作业的STW GC也会导致另一个作业的暂停,而导致进程终止的一个作业的致命错误会影响所有其他作业,那么,为什么不让不同的作业在不同的进程上运行以避免上述问题呢?

我认为区别在于线程共享相同的内存空间。。有了JVM,内存消耗很容易失控:这完全取决于您自己,如果需要将集群彼此隔离,您可以为您的工作运行单独的集群。虽然在操作上这显然有点痛苦,但实际上,如果你需要为每项工作分离任务经理,你无论如何都在创建新的集群。这是一个选项,但不是一个好选项,因为它增加了管理的复杂性。