CloudHub多Worker部署场景下FTP连接器文件拾取逻辑咨询
CloudHub多Worker下FTP事件源应用的响应逻辑
当你在CloudHub部署了带2个Worker的0.1版本FTP事件源应用时,文件到达FTP目录后的响应逻辑基于分布式文件锁定机制,具体流程如下:
- 两个Worker实例会按照连接器配置的轮询频率,定期扫描目标FTP目录。
- 第一个发现新文件的Worker会立即在FTP服务器上创建对应锁定文件(比如给原文件名加上
.lock后缀),抢占该文件的处理权,防止其他Worker重复拾取。 - 拿到锁的Worker会执行完整处理流程:将文件下载到本地临时存储、执行应用定义的业务逻辑、处理完成后根据配置(如删除原文件、移至归档目录等)处理源文件。
- 第二个Worker扫描到该文件时,会检测到已存在锁定标记,直接跳过,转而处理其他未被锁定的文件(若有)。
特殊场景处理
- 若持有锁的Worker意外崩溃,锁定文件会在配置的
lockTimeout时长后自动失效,另一个Worker会在下次轮询时检测到锁已过期,重新尝试锁定并处理该文件,避免文件丢失。 - 当多个文件同时到达时,两个Worker会各自锁定不同的文件并行处理,有效提升整体处理吞吐量。
内容的提问来源于stack exchange,提问作者deepuKumar
相关产品推荐
相关产品推荐

