تجزیه و تحلیل کد منبع Apache SeaTunnel Zeta Engine (قسمت 2): فرآیند ارسال کار در سمت مشتری

در ادامه مقاله قبلی، تجزیه و تحلیل کد منبع Apache SeaTunnel Zeta Engine (قسمت 1): Server Initialization

ارسال کار در سمت مشتری

در این قسمت به توضیح فرآیند ارسال وظایف در Apache SeaTunnel می پردازیم با استفاده از رابط خط فرمان (CLI).

برای ارسال یک کار با استفاده از CLI، دستور به صورت زیر است:

./bin/seatunnel.sh -c 

هنگامی که این فایل اسکریپت را بررسی می کنیم، می بینیم که در نهایت آن را فراخوانی می کند org.apache.seatunnel.core.starter.seatunnel.SeaTunnelClient کلاس

public class SeaTunnelClient {
    public static void main(String[] args) throws CommandException {
        ClientCommandArgs clientCommandArgs =
                CommandLineUtils.parse(
                        args,
                        new ClientCommandArgs(),
                        EngineType.SEATUNNEL.getStarterShellName(),
                        true);
        SeaTunnel.run(clientCommandArgs.buildCommand());
    }
}

این کلاس فقط یک کلاس دارد main روش مشابه کد سمت سرور که قبلاً ذکر شد، آن را می سازد ClientCommandArgs.

پارامترهای خط فرمان

بیایید بررسی کنیم clientCommandArgs.buildCommand روش

public Command buildCommand() {
    Common.setDeployMode(getDeployMode());
    if (checkConfig) {
        return new SeaTunnelConfValidateCommand(this);
    }
    if (encrypt) {
   ...

Source link