FARGATE 上的 AWS KCL 检查点更新行为

AWS KCL checkpoint update behavior on FARGATE

我在 FARGATE 上部署了一个 KCL (2.0/Java) 读取多个分片。不幸的是,我现在遇到两个问题,希望有人能帮助我:

  1. FARGATE 不允许正常关闭 JVM。
  2. 从 1 开始,DynamoDB 上的 LeaseTable 中的检查点值未更新。 KCL 应用程序的新实例将重新处理给定分片中的所有事件。

关于 1,我已经发现在使用 FARGATE SIGTERM 之后存在一些日志记录问题,但由于分片检查点未更新,我假设存在避免关闭例程的一般问题 运行.

如果对于 2,有人知道是否有可能 "manually" 更新检查点值,例如每 5 分钟更新一次,那至少会减少重复处理事件的数量。

GENERALIZATION:KCL 何时(关闭期间除外)更新租约 table?

谢谢,gapvision

结果是

1) 实际上是一个 docker "issue" 并指向 ENTRYPOINT 模式:

2) 是一个手动过程,没有内部触发检查点更新。需要显式调用 checkpoint() 方法才能更新指针