我想了解localexecutionenvironment的局限性,以及它是否可以在生产环境中运行?感谢任何帮助/见解。谢谢
yjghlzjz1#
localexecutionenvironment不会在启动时加载配置文件,因此必须在应用程序中执行所有配置。默认情况下,它也不提供rest端点。您可以通过执行以下操作来解决这两个问题:
String cwd = Paths.get(".").toAbsolutePath().normalize().toString(); Configuration conf = GlobalConfiguration.loadConfiguration(cwd); env = StreamExecutionEnvironment.createLocalEnvironmentWithWebUI(conf);
日志记录可能是另一个需要解决的问题。我不相信您能够使用flink cli来控制作业,但是如果您创建了webui(如上所示),您至少可以使用restapi来执行触发保存点之类的操作(在首先使用restapi获取作业id之后)。
3gtaxfhh2#
localexecutionenvironment启动了一个flink小型集群,它在单个jvm中运行整个flink系统(jobmanager、taskmanager)。所以你只能在一台机器上使用cpu内核和内存。你也没有来自多个工作经理的ha。我还没有研究过微型集群环境的其他限制,但我确信还有更多的限制。
2条答案
按热度按时间yjghlzjz1#
localexecutionenvironment不会在启动时加载配置文件,因此必须在应用程序中执行所有配置。默认情况下,它也不提供rest端点。您可以通过执行以下操作来解决这两个问题:
日志记录可能是另一个需要解决的问题。
我不相信您能够使用flink cli来控制作业,但是如果您创建了webui(如上所示),您至少可以使用restapi来执行触发保存点之类的操作(在首先使用restapi获取作业id之后)。
3gtaxfhh2#
localexecutionenvironment启动了一个flink小型集群,它在单个jvm中运行整个flink系统(jobmanager、taskmanager)。所以你只能在一台机器上使用cpu内核和内存。你也没有来自多个工作经理的ha。我还没有研究过微型集群环境的其他限制,但我确信还有更多的限制。