{"id":92213,"date":"2025-01-10T08:21:01","date_gmt":"2025-01-10T04:51:01","guid":{"rendered":"https:\/\/nabfollower.com\/blog\/%d9%86%d8%ad%d9%88%d9%87-%d8%ad%d9%84-%d9%85%d8%b4%da%a9%d9%84-%d8%a7%d8%b5%d9%84%db%8c-%d9%86%d8%a7%d8%b4%db%8c-%d8%a7%d8%b2-%d8%aa%d8%ad%d9%85%d9%84-%d8%ae%d8%b7%d8%a7%db%8c-%d8%ae%d9%88%d8%af-dolph\/"},"modified":"2025-01-10T08:21:01","modified_gmt":"2025-01-10T04:51:01","slug":"%d9%86%d8%ad%d9%88%d9%87-%d8%ad%d9%84-%d9%85%d8%b4%da%a9%d9%84-%d8%a7%d8%b5%d9%84%db%8c-%d9%86%d8%a7%d8%b4%db%8c-%d8%a7%d8%b2-%d8%aa%d8%ad%d9%85%d9%84-%d8%ae%d8%b7%d8%a7%db%8c-%d8%ae%d9%88%d8%af-dolph","status":"publish","type":"post","link":"https:\/\/nabfollower.com\/blog\/%d9%86%d8%ad%d9%88%d9%87-%d8%ad%d9%84-%d9%85%d8%b4%da%a9%d9%84-%d8%a7%d8%b5%d9%84%db%8c-%d9%86%d8%a7%d8%b4%db%8c-%d8%a7%d8%b2-%d8%aa%d8%ad%d9%85%d9%84-%d8%ae%d8%b7%d8%a7%db%8c-%d8%ae%d9%88%d8%af-dolph\/","title":{"rendered":"\u0646\u062d\u0648\u0647 \u062d\u0644 \u0645\u0634\u06a9\u0644 \u0627\u0635\u0644\u06cc \u0646\u0627\u0634\u06cc \u0627\u0632 \u062a\u062d\u0645\u0644 \u062e\u0637\u0627\u06cc \u062e\u0648\u062f DolphinScheduler \u06a9\u0647 \u0645\u0646\u062c\u0631 \u0628\u0647 \u062e\u0631\u0627\u0628\u06cc \u0645\u062f\u0627\u0648\u0645 \u0633\u0631\u0648\u0631 \u0645\u06cc \u0634\u0648\u062f"},"content":{"rendered":"<div data-article-id=\"2198168\" id=\"article-body\">\n<p><img decoding=\"async\" src=\"https:\/\/media2.dev.to\/dynamic\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzpael17v1vzvbrttfb2r.jpg\" alt=\"\u062a\u0648\u0636\u06cc\u062d\u0627\u062a \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"800\" height=\"555\" title=\"\"><\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_81 counter-hierarchy ez-toc-counter-rtl ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">\u0641\u0647\u0631\u0633\u062a \u0645\u0637\u0627\u0644\u0628<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/nabfollower.com\/blog\/%d9%86%d8%ad%d9%88%d9%87-%d8%ad%d9%84-%d9%85%d8%b4%da%a9%d9%84-%d8%a7%d8%b5%d9%84%db%8c-%d9%86%d8%a7%d8%b4%db%8c-%d8%a7%d8%b2-%d8%aa%d8%ad%d9%85%d9%84-%d8%ae%d8%b7%d8%a7%db%8c-%d8%ae%d9%88%d8%af-dolph\/#%D8%A8%D8%A7%D8%B2%D8%AA%D9%88%D9%84%DB%8C%D8%AF_%D9%85%D8%B4%DA%A9%D9%84\" >\u0628\u0627\u0632\u062a\u0648\u0644\u06cc\u062f \u0645\u0634\u06a9\u0644<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/nabfollower.com\/blog\/%d9%86%d8%ad%d9%88%d9%87-%d8%ad%d9%84-%d9%85%d8%b4%da%a9%d9%84-%d8%a7%d8%b5%d9%84%db%8c-%d9%86%d8%a7%d8%b4%db%8c-%d8%a7%d8%b2-%d8%aa%d8%ad%d9%85%d9%84-%d8%ae%d8%b7%d8%a7%db%8c-%d8%ae%d9%88%d8%af-dolph\/#%D8%AA%D8%B3%D8%AA_%DA%86%D9%86%D8%AF_%D8%B3%D9%86%D8%A7%D8%B1%DB%8C%D9%88%DB%8C%DB%8C\" >\u062a\u0633\u062a \u0686\u0646\u062f \u0633\u0646\u0627\u0631\u06cc\u0648\u06cc\u06cc<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/nabfollower.com\/blog\/%d9%86%d8%ad%d9%88%d9%87-%d8%ad%d9%84-%d9%85%d8%b4%da%a9%d9%84-%d8%a7%d8%b5%d9%84%db%8c-%d9%86%d8%a7%d8%b4%db%8c-%d8%a7%d8%b2-%d8%aa%d8%ad%d9%85%d9%84-%d8%ae%d8%b7%d8%a7%db%8c-%d8%ae%d9%88%d8%af-dolph\/#%D8%AA%D8%AD%D9%84%DB%8C%D9%84_%D8%A7%D8%B5%D9%88%D9%84%DB%8C\" >\u062a\u062d\u0644\u06cc\u0644 \u0627\u0635\u0648\u0644\u06cc<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/nabfollower.com\/blog\/%d9%86%d8%ad%d9%88%d9%87-%d8%ad%d9%84-%d9%85%d8%b4%da%a9%d9%84-%d8%a7%d8%b5%d9%84%db%8c-%d9%86%d8%a7%d8%b4%db%8c-%d8%a7%d8%b2-%d8%aa%d8%ad%d9%85%d9%84-%d8%ae%d8%b7%d8%a7%db%8c-%d8%ae%d9%88%d8%af-dolph\/#%D8%AA%D8%AC%D8%B2%DB%8C%D9%87_%D9%88_%D8%AA%D8%AD%D9%84%DB%8C%D9%84_%DA%A9%D8%AF_%D9%85%D9%86%D8%A8%D8%B9\" >\u062a\u062c\u0632\u06cc\u0647 \u0648 \u062a\u062d\u0644\u06cc\u0644 \u06a9\u062f \u0645\u0646\u0628\u0639<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/nabfollower.com\/blog\/%d9%86%d8%ad%d9%88%d9%87-%d8%ad%d9%84-%d9%85%d8%b4%da%a9%d9%84-%d8%a7%d8%b5%d9%84%db%8c-%d9%86%d8%a7%d8%b4%db%8c-%d8%a7%d8%b2-%d8%aa%d8%ad%d9%85%d9%84-%d8%ae%d8%b7%d8%a7%db%8c-%d8%ae%d9%88%d8%af-dolph\/#%D8%AA%D9%88%D8%B6%DB%8C%D8%AD_%D9%85%DA%A9%D8%A7%D9%86%DB%8C%D8%B3%D9%85_%D8%A2%D8%AA%D8%B4_%D8%B3%D9%88%D8%B2%DB%8C_%D8%AF%D8%B1_%DA%A9%D9%88%D8%A7%D8%B1%D8%AA%D8%B2\" >\u062a\u0648\u0636\u06cc\u062d \u0645\u06a9\u0627\u0646\u06cc\u0633\u0645 \u0622\u062a\u0634 \u0633\u0648\u0632\u06cc \u062f\u0631 \u06a9\u0648\u0627\u0631\u062a\u0632<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/nabfollower.com\/blog\/%d9%86%d8%ad%d9%88%d9%87-%d8%ad%d9%84-%d9%85%d8%b4%da%a9%d9%84-%d8%a7%d8%b5%d9%84%db%8c-%d9%86%d8%a7%d8%b4%db%8c-%d8%a7%d8%b2-%d8%aa%d8%ad%d9%85%d9%84-%d8%ae%d8%b7%d8%a7%db%8c-%d8%ae%d9%88%d8%af-dolph\/#%DA%A9%D8%AF_%D9%85%D9%86%D8%A8%D8%B9_%D8%B1%D8%A7_%D8%A7%D8%B5%D9%84%D8%A7%D8%AD_%DA%A9%D9%86%DB%8C%D8%AF\" >\u06a9\u062f \u0645\u0646\u0628\u0639 \u0631\u0627 \u0627\u0635\u0644\u0627\u062d \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/nabfollower.com\/blog\/%d9%86%d8%ad%d9%88%d9%87-%d8%ad%d9%84-%d9%85%d8%b4%da%a9%d9%84-%d8%a7%d8%b5%d9%84%db%8c-%d9%86%d8%a7%d8%b4%db%8c-%d8%a7%d8%b2-%d8%aa%d8%ad%d9%85%d9%84-%d8%ae%d8%b7%d8%a7%db%8c-%d8%ae%d9%88%d8%af-dolph\/#%D8%AA%D8%A7%DB%8C%DB%8C%D8%AF_%D9%85%D8%AD%DB%8C%D8%B7_%D8%AA%D9%88%D8%B3%D8%B9%D9%87\" >\u062a\u0627\u06cc\u06cc\u062f \u0645\u062d\u06cc\u0637 \u062a\u0648\u0633\u0639\u0647<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/nabfollower.com\/blog\/%d9%86%d8%ad%d9%88%d9%87-%d8%ad%d9%84-%d9%85%d8%b4%da%a9%d9%84-%d8%a7%d8%b5%d9%84%db%8c-%d9%86%d8%a7%d8%b4%db%8c-%d8%a7%d8%b2-%d8%aa%d8%ad%d9%85%d9%84-%d8%ae%d8%b7%d8%a7%db%8c-%d8%ae%d9%88%d8%af-dolph\/#%DA%AF%D8%B1%D8%AF%D8%A2%D9%88%D8%B1%DB%8C_%D9%88_%D8%A8%D8%B3%D8%AA%D9%87_%D8%A8%D9%86%D8%AF%DB%8C_%DA%A9%D8%A7%D9%85%D9%84\" >\u06af\u0631\u062f\u0622\u0648\u0631\u06cc \u0648 \u0628\u0633\u062a\u0647 \u0628\u0646\u062f\u06cc \u06a9\u0627\u0645\u0644<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/nabfollower.com\/blog\/%d9%86%d8%ad%d9%88%d9%87-%d8%ad%d9%84-%d9%85%d8%b4%da%a9%d9%84-%d8%a7%d8%b5%d9%84%db%8c-%d9%86%d8%a7%d8%b4%db%8c-%d8%a7%d8%b2-%d8%aa%d8%ad%d9%85%d9%84-%d8%ae%d8%b7%d8%a7%db%8c-%d8%ae%d9%88%d8%af-dolph\/#%D9%81%D9%82%D8%B7_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%B1%D8%A7_%DA%A9%D8%A7%D9%85%D9%BE%D8%A7%DB%8C%D9%84_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0641\u0642\u0637 \u06cc\u06a9 \u0645\u0627\u0698\u0648\u0644 \u0631\u0627 \u06a9\u0627\u0645\u067e\u0627\u06cc\u0644 \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/nabfollower.com\/blog\/%d9%86%d8%ad%d9%88%d9%87-%d8%ad%d9%84-%d9%85%d8%b4%da%a9%d9%84-%d8%a7%d8%b5%d9%84%db%8c-%d9%86%d8%a7%d8%b4%db%8c-%d8%a7%d8%b2-%d8%aa%d8%ad%d9%85%d9%84-%d8%ae%d8%b7%d8%a7%db%8c-%d8%ae%d9%88%d8%af-dolph\/#%D9%85%D8%B4%DA%A9%D9%84_%D8%AD%D9%84_%D8%B4%D8%AF\" >\u0645\u0634\u06a9\u0644 \u062d\u0644 \u0634\u062f<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"%D8%A8%D8%A7%D8%B2%D8%AA%D9%88%D9%84%DB%8C%D8%AF_%D9%85%D8%B4%DA%A9%D9%84\"><\/span>\n<p>  \u0628\u0627\u0632\u062a\u0648\u0644\u06cc\u062f \u0645\u0634\u06a9\u0644<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u062f\u0631 DolphinScheduler\u060c \u0648\u0638\u06cc\u0641\u0647 Shell \u0632\u06cc\u0631 \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>current_timestamp<span class=\"o\">()<\/span> <span class=\"o\">{<\/span>  \n    <span class=\"nb\">date<\/span> +<span class=\"s2\">\"%Y-%m-%d %H:%M:%S\"<\/span>  \n<span class=\"o\">}<\/span>\n\n<span class=\"nv\">TIMESTAMP<\/span><span class=\"o\">=<\/span><span class=\"si\">$(<\/span>current_timestamp<span class=\"si\">)<\/span>\n<span class=\"nb\">echo<\/span> <span class=\"nv\">$TIMESTAMP<\/span>\n<span class=\"nb\">sleep <\/span>60\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0627\u0633\u062a\u0631\u0627\u062a\u0698\u06cc \u0627\u062c\u0631\u0627\u06cc \u06af\u0631\u062f\u0634 \u06a9\u0627\u0631 \u062f\u0631 DolphinScheduler \u0628\u0647 \u0635\u0648\u0631\u062a \u0645\u0648\u0627\u0632\u06cc \u062a\u0646\u0638\u06cc\u0645 \u0634\u062f\u0647 \u0627\u0633\u062a.<\/p>\n<p>\u0641\u0627\u0635\u0644\u0647 \u0632\u0645\u0627\u0646\u0628\u0646\u062f\u06cc 10 \u062b\u0627\u0646\u06cc\u0647 \u062a\u0646\u0638\u06cc\u0645 \u0634\u062f\u0647 \u0627\u0633\u062a.<\/p>\n<p>\u067e\u0633 \u0627\u0632 \u0627\u0633\u062a\u0642\u0631\u0627\u0631 \u0648\u0638\u06cc\u0641\u0647 \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u06cc\u0632\u06cc \u0634\u062f\u0647\u060c \u0647\u0645\u0627\u0646\u0637\u0648\u0631 \u06a9\u0647 \u0627\u0646\u062a\u0638\u0627\u0631 \u0645\u06cc \u0631\u0648\u062f \u0627\u062c\u0631\u0627 \u0645\u06cc \u0634\u0648\u062f.<\/p>\n<p>\u062f\u0631 \u0627\u06cc\u0646 \u0645\u0631\u062d\u0644\u0647\u060c \u06af\u0631\u0647 Master \u0631\u0627 \u0628\u0631\u0627\u06cc \u0634\u0628\u06cc\u0647 \u0633\u0627\u0632\u06cc \u06cc\u06a9 \u062a\u0635\u0627\u062f\u0641 \u0628\u06a9\u0634\u06cc\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code><span class=\"nv\">$ <\/span>jps\n1979710 AlertServer\n1979626 WorkerServer\n1979546 MasterServer\n1979794 ApiApplicationServer\n1980483 Jps\n<span class=\"nv\">$ <\/span><span class=\"nb\">kill<\/span> <span class=\"nt\">-9<\/span> 1979546\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0628\u0627 \u0628\u0631\u0631\u0633\u06cc DolphinScheduler\u060c \u0645\u062a\u0648\u062c\u0647 \u0645\u06cc \u0634\u0648\u06cc\u0645 \u06a9\u0647 \u06af\u0631\u0647 Master \u062f\u06cc\u06af\u0631 \u062f\u0631 \u062f\u0633\u062a\u0631\u0633 \u0646\u06cc\u0633\u062a.<\/p>\n<p>\u062f\u0631 \u0627\u06cc\u0646 \u0645\u0631\u062d\u0644\u0647\u060c \u0645\u0634\u0627\u0647\u062f\u0647 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u0645 \u06a9\u0647 \u06af\u0631\u062f\u0634 \u06a9\u0627\u0631 \u062f\u0631 DolphinScheduler \u0632\u0645\u0627\u0646\u200c\u0628\u0646\u062f\u06cc \u0648\u0638\u0627\u06cc\u0641 \u0631\u0627 \u0645\u062a\u0648\u0642\u0641 \u0645\u06cc\u200c\u06a9\u0646\u062f \u0648 \u0647\u0645\u0647 \u06a9\u0627\u0631\u0647\u0627 \u0628\u0647 \u0637\u0648\u0631 \u0646\u0627\u0645\u062d\u062f\u0648\u062f \u0627\u062c\u0631\u0627 \u0645\u06cc\u200c\u0634\u0648\u0646\u062f \u062a\u0627 \u0632\u0645\u0627\u0646\u06cc \u06a9\u0647 \u062e\u0637\u0627\u06cc\u06cc \u0631\u062e \u062f\u0647\u062f.<\/p>\n<p>\u067e\u0633 \u0627\u0632 \u0645\u062f\u062a\u06cc (\u0634\u0628\u06cc\u0647 \u0633\u0627\u0632\u06cc \u06a9\u0634\u0641 \u0645\u0634\u06a9\u0644 \u0633\u0642\u0648\u0637)\u060c DolphinScheduler \u0631\u0627 \u0645\u062c\u062f\u062f\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>sh bin\/stop-all.sh\nsh bin\/start-all.sh\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u067e\u0633 \u0627\u0632 \u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u062c\u062f\u062f\u060c \u062a\u0645\u0627\u0645 \u06a9\u0627\u0631\u0647\u0627\u06cc\u06cc \u06a9\u0647 \u0642\u0628\u0644\u0627\u064b \u0646\u0627\u0645\u0648\u0641\u0642 \u0628\u0648\u062f\u0647\u200c\u0627\u0646\u062f\u060c \u0627\u0632 \u062c\u0645\u0644\u0647 \u06a9\u0627\u0631\u0647\u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0631\u06cc\u0632\u06cc \u0646\u0634\u062f\u0647\u060c \u0627\u062c\u0631\u0627 \u0645\u06cc\u200c\u0634\u0648\u0646\u062f.<\/p>\n<p>\u0627\u06cc\u0646 \u06cc\u06a9 \u0645\u0633\u0626\u0644\u0647 \u0628\u062d\u0631\u0627\u0646\u06cc \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc \u06a9\u0646\u062f: <strong>\u0627\u06af\u0631 \u0627\u06cc\u0646\u0647\u0627 \u0648\u0638\u0627\u06cc\u0641 \u0628\u0627 \u06a9\u0627\u0631\u0627\u06cc\u06cc \u0628\u0627\u0644\u0627 \u0628\u0627\u0634\u062f\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u0645\u0646\u062c\u0631 \u0628\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0628\u06cc\u0634 \u0627\u0632 \u062d\u062f \u0627\u0632 CPU \u0648 \u062d\u0627\u0641\u0638\u0647 \u0634\u0648\u062f \u0648 \u0628\u0627\u0639\u062b \u0627\u0632 \u06a9\u0627\u0631 \u0627\u0641\u062a\u0627\u062f\u0646 \u06a9\u0644 \u0633\u0631\u0648\u0631 \u0634\u0648\u062f!!!<\/strong><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/media2.dev.to\/dynamic\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzut5olcp9y4mgerc6fwo.png\" alt=\"\u062a\u0648\u0636\u06cc\u062d\u0627\u062a \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"755\" height=\"444\" title=\"\"><br \/>\u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 CPU \u0648 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 RAM<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D8%AA%D8%B3%D8%AA_%DA%86%D9%86%D8%AF_%D8%B3%D9%86%D8%A7%D8%B1%DB%8C%D9%88%DB%8C%DB%8C\"><\/span>\n<p>  \u062a\u0633\u062a \u0686\u0646\u062f \u0633\u0646\u0627\u0631\u06cc\u0648\u06cc\u06cc<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<ul>\n<li>\n<strong>\u062e\u0631\u0627\u0628\u06cc \u0627\u0635\u0644\u06cc\u060c \u06a9\u0644 DS \u0631\u0627 \u0631\u06cc\u0633\u062a\u0627\u0631\u062a \u06a9\u0646\u06cc\u062f<\/strong>: \u0627\u06cc\u0646 \u0645\u0648\u0636\u0648\u0639 \u0628\u0627\u0639\u062b \u0628\u0631\u0648\u0632 \u0645\u0634\u06a9\u0644 \u0641\u0648\u0642 \u0645\u06cc \u0634\u0648\u062f.<\/li>\n<li>\n<strong>Master Crash\u060c Master \u0645\u0631\u0628\u0648\u0637\u0647 \u0631\u0627 \u062f\u0648\u0628\u0627\u0631\u0647 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f<\/strong>: \u0627\u06cc\u0646 \u0628\u0627\u0639\u062b \u0645\u0634\u06a9\u0644 \u0628\u0627\u0644\u0627 \u0645\u06cc \u0634\u0648\u062f &#8211; \u0627\u06cc\u0646 \u06cc\u06a9 \u0646\u0642\u0635 \u0627\u0633\u062a\u060c \u0632\u06cc\u0631\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \u0631\u0633\u0645\u06cc \u06cc\u06a9 \u0641\u0631\u0622\u06cc\u0646\u062f \u067e\u0633 \u0632\u0645\u06cc\u0646\u0647 \u062c\u062f\u0627\u06af\u0627\u0646\u0647 \u0628\u0631\u0627\u06cc Master \u0646\u062f\u0627\u0631\u062f\u060c \u0641\u0642\u0637 \u06cc\u06a9 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \u0634\u0631\u0648\u0639 \u067e\u06cc\u0634 \u0632\u0645\u06cc\u0646\u0647 \u062f\u0627\u0631\u062f. \u0628\u0627 \u0627\u06cc\u0646 \u062d\u0627\u0644\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u062f\u0648\u0628\u0627\u0631\u0647 \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u062f <code>start-all.sh<\/code>.<\/li>\n<li>\n<strong>\u0633\u0642\u0648\u0637 \u06a9\u0627\u0631\u06af\u0631\u060c \u06a9\u0644 DS \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u062c\u062f\u062f \u06a9\u0646\u06cc\u062f<\/strong>: \u0627\u06cc\u0646 \u0628\u0627\u0639\u062b \u0645\u0634\u06a9\u0644 \u0628\u0627\u0644\u0627 \u0646\u0645\u06cc \u0634\u0648\u062f &#8211; \u0632\u06cc\u0631\u0627 Master \u0628\u0647 \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u06cc\u0632\u06cc \u0648\u0638\u0627\u06cc\u0641 \u0627\u062f\u0627\u0645\u0647 \u0645\u06cc \u062f\u0647\u062f \u0648 \u0648\u0638\u0627\u06cc\u0641 \u0645\u0633\u062a\u0642\u06cc\u0645\u0627\u064b \u067e\u0633 \u0627\u0632 \u062e\u0631\u0627\u0628\u06cc Worker \u0628\u0627 \u0634\u06a9\u0633\u062a \u0645\u0648\u0627\u062c\u0647 \u0645\u06cc \u0634\u0648\u0646\u062f.<\/li>\n<li>\n<strong>\u062e\u0631\u0627\u0628\u06cc \u06a9\u0627\u0631\u06af\u0631\u060c Worker \u0645\u0631\u0628\u0648\u0637\u0647 \u0631\u0627 \u0645\u062c\u062f\u062f\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f<\/strong>: \u0627\u06cc\u0646 \u0645\u0634\u06a9\u0644 \u0628\u0627\u0644\u0627 \u0631\u0627 \u0627\u06cc\u062c\u0627\u062f \u0646\u0645\u06cc \u06a9\u0646\u062f &#8211; \u0634\u0628\u06cc\u0647 \u0628\u0647 \u0633\u0646\u0627\u0631\u06cc\u0648\u06cc \u062a\u0635\u0627\u062f\u0641 Worker \u0627\u0633\u062a.<\/li>\n<li>\n<strong>\u06a9\u0644 DS \u062e\u0631\u0627\u0628 \u0645\u06cc \u0634\u0648\u062f\u060c \u06a9\u0644 DS \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u062c\u062f\u062f \u06a9\u0646\u06cc\u062f<\/strong>: \u0627\u06cc\u0646 \u0645\u0648\u0636\u0648\u0639 \u0628\u0627\u0639\u062b \u0628\u0631\u0648\u0632 \u0645\u0634\u06a9\u0644 \u0641\u0648\u0642 \u0645\u06cc \u0634\u0648\u062f.<\/li>\n<li>\n<strong>DS \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0631\u0627 \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f <code>stop-all.sh<\/code>\u060c \u0633\u067e\u0633 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u062c\u062f\u062f \u06a9\u0646\u06cc\u062f<\/strong>: \u0627\u06cc\u0646 \u0645\u0648\u0636\u0648\u0639 \u0628\u0627\u0639\u062b \u0628\u0631\u0648\u0632 \u0645\u0634\u06a9\u0644 \u0641\u0648\u0642 \u0645\u06cc \u0634\u0648\u062f.<\/li>\n<\/ul>\n<p>\u0645\u0633\u0626\u0644\u0647 \u0627\u0635\u0644\u06cc \u0645\u0631\u0628\u0648\u0637 \u0628\u0647 <strong>\u0627\u0633\u062a\u0627\u062f<\/strong>. \u062a\u0627 \u0632\u0645\u0627\u0646\u06cc \u06a9\u0647 \u0648\u0638\u0627\u06cc\u0641 \u062f\u0648\u0631\u0647 \u0627\u06cc \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0634\u0648\u0646\u062f\u060c \u0686\u0647 Master \u062e\u0631\u0627\u0628 \u0634\u0648\u062f \u06cc\u0627 \u0627\u0632 \u0637\u0631\u06cc\u0642 \u06cc\u06a9 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \u0645\u062a\u0648\u0642\u0641 \u0634\u0648\u062f\u060c \u0645\u0634\u06a9\u0644 \u0641\u0648\u0642 \u0631\u062e \u0645\u06cc \u062f\u0647\u062f.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D8%AA%D8%AD%D9%84%DB%8C%D9%84_%D8%A7%D8%B5%D9%88%D9%84%DB%8C\"><\/span>\n<p>  \u062a\u062d\u0644\u06cc\u0644 \u0627\u0635\u0648\u0644\u06cc<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0627\u062c\u0632\u0627\u06cc \u0627\u0635\u0644\u06cc DolphinScheduler:<\/p>\n<ul>\n<li>\n<strong>\u0645\u0633\u062a\u0631 \u0633\u0631\u0648\u0631<\/strong>: \u0645\u0633\u0626\u0648\u0644 \u0628\u062e\u0634 \u0628\u0646\u062f\u06cc \u0648\u0638\u0627\u06cc\u0641 DAG\u060c \u0646\u0638\u0627\u0631\u062a \u0628\u0631 \u0627\u0631\u0633\u0627\u0644 \u0648\u0638\u0627\u06cc\u0641\u060c \u0648 \u0646\u0638\u0627\u0631\u062a \u0628\u0631 \u0648\u0636\u0639\u06cc\u062a \u0633\u0644\u0627\u0645\u062a \u0633\u0627\u06cc\u0631 \u0633\u0631\u0648\u0631\u0647\u0627\u06cc Master \u0648 Worker \u0627\u0633\u062a. \u0647\u0646\u06af\u0627\u0645 \u0634\u0631\u0648\u0639\u060c \u06af\u0631\u0647 \u0647\u0627\u06cc \u0645\u0648\u0642\u062a \u0631\u0627 \u062f\u0631 ZooKeeper \u062b\u0628\u062a \u0645\u06cc \u06a9\u0646\u062f \u0648 \u062a\u062d\u0645\u0644 \u062e\u0637\u0627 \u0631\u0627 \u0627\u0632 \u0637\u0631\u06cc\u0642 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u06af\u0631\u0647 ZooKeeper \u06a9\u0646\u062a\u0631\u0644 \u0645\u06cc \u06a9\u0646\u062f.<\/li>\n<li>\n<strong>Worker Server<\/strong>: \u0645\u0633\u0626\u0648\u0644 \u0627\u062c\u0631\u0627\u06cc \u0648\u0638\u0627\u06cc\u0641 \u0648 \u0633\u0631\u0648\u06cc\u0633 \u06af\u0632\u0627\u0631\u0634. \u0627\u06cc\u0646 \u06cc\u06a9 \u06af\u0631\u0647 \u0645\u0648\u0642\u062a \u0631\u0627 \u062f\u0631 ZooKeeper \u062b\u0628\u062a \u0645\u06cc \u06a9\u0646\u062f \u0648 \u0636\u0631\u0628\u0627\u0646 \u0642\u0644\u0628 \u0631\u0627 \u062d\u0641\u0638 \u0645\u06cc \u06a9\u0646\u062f.<\/li>\n<li>\n<strong>APISserver<\/strong>: \u0628\u0647 \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u200c\u0647\u0627\u06cc \u0631\u0627\u0628\u0637 \u06a9\u0627\u0631\u0628\u0631\u06cc \u062c\u0644\u0648\u06cc\u06cc \u0631\u0633\u06cc\u062f\u06af\u06cc \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/li>\n<\/ul>\n<p>\u062c\u0631\u06cc\u0627\u0646 \u0627\u062c\u0631\u0627\u06cc \u06a9\u0627\u0631 \u0631\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646 \u0628\u0647 \u0635\u0648\u0631\u062a \u0632\u06cc\u0631 \u062e\u0644\u0627\u0635\u0647 \u06a9\u0631\u062f:<\/p>\n<ol>\n<li>\n<strong>\u0627\u06cc\u062c\u0627\u062f \u06a9\u0627\u0631<\/strong>: \u06cc\u06a9 \u06a9\u0627\u0631 \u062f\u0631 API-Server \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc \u0634\u0648\u062f \u0648 \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0628\u0627\u0642\u06cc \u0645\u06cc \u0645\u0627\u0646\u062f.<\/li>\n<li>\n<strong>\u062a\u0648\u0644\u06cc\u062f \u0641\u0631\u0645\u0627\u0646<\/strong>: \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u0628\u0647 \u0635\u0648\u0631\u062a \u062f\u0633\u062a\u06cc \u06cc\u06a9 \u06a9\u0627\u0631 \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06cc\u0627 \u0632\u0645\u0627\u0646 \u0628\u0646\u062f\u06cc \u0645\u06cc \u06a9\u0646\u062f\u060c \u06a9\u0647 \u062f\u0633\u062a\u0648\u0631\u06cc \u0631\u0627 \u0628\u0631\u0627\u06cc \u0627\u062c\u0631\u0627\u06cc \u06af\u0631\u062f\u0634 \u06a9\u0627\u0631 \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0645\u06cc \u0646\u0648\u06cc\u0633\u062f.<\/li>\n<li>\n<strong>\u0627\u0633\u062a\u0627\u062f \u0645\u0635\u0631\u0641 \u062f\u0633\u062a\u0648\u0631\u0627\u062a<\/strong>: Master \u062f\u0633\u062a\u0648\u0631\u0627\u062a \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0631\u0627 \u0645\u0635\u0631\u0641 \u0645\u06cc \u06a9\u0646\u062f\u060c \u06af\u0631\u062f\u0634 \u06a9\u0627\u0631 \u0631\u0627 \u0634\u0631\u0648\u0639 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u0648\u0638\u0627\u06cc\u0641\u06cc \u0631\u0627 \u0628\u0631\u0627\u06cc \u0627\u062c\u0631\u0627 \u0628\u0647 Worker \u0627\u062e\u062a\u0635\u0627\u0635 \u0645\u06cc \u062f\u0647\u062f.<\/li>\n<li>\n<strong>\u062a\u06a9\u0645\u06cc\u0644<\/strong>: \u067e\u0633 \u0627\u0632 \u062a\u06a9\u0645\u06cc\u0644 \u06af\u0631\u062f\u0634 \u06a9\u0627\u0631\u060c Master \u0627\u062c\u0631\u0627\u06cc \u06af\u0631\u062f\u0634 \u06a9\u0627\u0631 \u0631\u0627 \u0628\u0647 \u067e\u0627\u06cc\u0627\u0646 \u0645\u06cc \u0631\u0633\u0627\u0646\u062f.<\/li>\n<\/ol>\n<p><img decoding=\"async\" src=\"https:\/\/media2.dev.to\/dynamic\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpdzig2xhvlgnvjy1mgf9.png\" alt=\"\u062a\u0648\u0636\u06cc\u062d\u0627\u062a \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"800\" height=\"410\" title=\"\"><\/p>\n<p>\u0628\u0631 \u0627\u0633\u0627\u0633 \u0648\u0628 \u0633\u0627\u06cc\u062a \u0631\u0633\u0645\u06cc\u060c \u0631\u0648\u0646\u062f \u0627\u062c\u0631\u0627\u06cc \u0648\u0638\u0627\u06cc\u0641 \u0627\u0635\u0644\u06cc DolphinScheduler \u0628\u0647 \u0634\u0631\u062d \u0632\u06cc\u0631 \u0627\u0633\u062a:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/media2.dev.to\/dynamic\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8ybuyxo6q2phpw3z4s1y.png\" alt=\"\u062a\u0648\u0636\u06cc\u062d\u0627\u062a \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"720\" height=\"590\" title=\"\"><\/p>\n<p>\u0628\u0627 \u062a\u0648\u062c\u0647 \u0628\u0647 \u067e\u06cc\u0686\u06cc\u062f\u06af\u06cc \u0632\u0645\u0627\u0646\u200c\u0628\u0646\u062f\u06cc \u06a9\u0627\u0631\u060c \u06cc\u06a9 \u0641\u0631\u0622\u06cc\u0646\u062f \u0628\u0632\u0631\u06af \u0631\u0627 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646 \u0628\u0647 \u0641\u0631\u0622\u06cc\u0646\u062f\u0647\u0627\u06cc \u06a9\u0648\u0686\u06a9\u200c\u062a\u0631 \u062a\u0642\u0633\u06cc\u0645 \u06a9\u0631\u062f \u06a9\u0647 \u0641\u0631\u0622\u06cc\u0646\u062f\u0647\u0627\u06cc \u06a9\u0645\u06a9\u06cc \u062e\u0627\u0631\u062c \u0627\u0632 \u062c\u0631\u06cc\u0627\u0646 \u0627\u0635\u0644\u06cc \u0627\u0636\u0627\u0641\u0647 \u0645\u06cc\u200c\u0634\u0648\u0646\u062f. \u062f\u0631 \u0632\u06cc\u0631 \u062a\u062c\u0632\u06cc\u0647 \u0648 \u062a\u062d\u0644\u06cc\u0644 \u062a\u062c\u0632\u06cc\u0647 \u0648 \u062a\u062d\u0644\u06cc\u0644 \u0641\u0631\u0622\u06cc\u0646\u062f \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u06cc\u0632\u06cc \u0627\u062c\u0631\u0627 \u0627\u0633\u062a \u06a9\u0647 \u062f\u0631\u06a9 \u0622\u0646 \u0631\u0627 \u0622\u0633\u0627\u0646 \u062a\u0631 \u0645\u06cc \u06a9\u0646\u062f:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/media2.dev.to\/dynamic\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxpfkc2cuztthk3rymthw.png\" alt=\"\u062a\u0648\u0636\u06cc\u062d\u0627\u062a \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"729\" height=\"240\" title=\"\"><\/p>\n<p>\u0645\u0646 \u0627\u0628\u062a\u062f\u0627\u060c \u0633\u0631\u0648\u0631 API \u0633\u0627\u0632\u0646\u062f\u0647\u060c \u062f\u0631\u062e\u0648\u0627\u0633\u062a HTTP \u0627\u062c\u0631\u0627\u06cc \u06af\u0631\u062f\u0634 \u06a9\u0627\u0631 \u06a9\u0627\u0631\u0628\u0631 \u0631\u0627 \u062f\u0631 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u0641\u0631\u0645\u0627\u0646 \u06a9\u067e\u0633\u0648\u0644\u0647 \u0645\u06cc\u200c\u06a9\u0646\u062f \u0648 \u0622\u0646 \u0631\u0627 \u062f\u0631 \u062f\u0633\u062a\u0648\u0631 \u0642\u0631\u0627\u0631 \u0645\u06cc\u200c\u062f\u0647\u062f. <code>t_ds_command<\/code> \u062c\u062f\u0648\u0644 \u062f\u0631 \u0632\u06cc\u0631 \u0646\u0645\u0648\u0646\u0647 \u0627\u06cc \u0627\u0632 \u062f\u0633\u062a\u0648\u0631 \u0628\u0631\u0627\u06cc \u0634\u0631\u0648\u0639 \u06cc\u06a9 \u0646\u0645\u0648\u0646\u0647 \u06af\u0631\u062f\u0634 \u06a9\u0627\u0631 (\u0646\u0633\u062e\u0647 \u0642\u062f\u06cc\u0645\u06cc) \u0622\u0645\u062f\u0647 \u0627\u0633\u062a:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>\n{\n    \"commandType\": \"START_PROCESS\",\n    \"processDefinitionCode\": 14285512555584,\n    \"executorId\": 1,\n    \"commandParam\": \"{}\",\n    \"taskDependType\": \"TASK_POST\",\n    \"failureStrategy\": \"CONTINUE\",\n    \"warningType\": \"NONE\",\n    \"startTime\": 1723444881372,\n    \"processInstancePriority\": \"MEDIUM\",\n    \"updateTime\": 1723444881372,\n    \"workerGroup\": \"default\",\n    \"tenantCode\": \"default\",\n    \"environmentCode\": -1,\n    \"dryRun\": 0,\n    \"processInstanceId\": 0,\n    \"processDefinitionVersion\": 1,\n    \"testFlag\": 0\n}\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>ii \u0628\u0639\u062f\u060c \u0645\u0635\u0631\u0641 \u06a9\u0646\u0646\u062f\u0647\u060c <code>MasterSchedulerBootstrap<\/code> \u0628\u0631\u0646\u0627\u0645\u0647 \u062d\u0644\u0642\u0647 \u062f\u0631 \u0633\u0631\u0648\u0631 \u0627\u0635\u0644\u06cc\u060c \u0627\u0632 Zookeeper (ZK) \u0628\u0631\u0627\u06cc \u062a\u062e\u0635\u06cc\u0635 \u0627\u0633\u0644\u0627\u062a \u0628\u0647 \u062e\u0648\u062f \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f. <code>MasterSchedulerBootstrap<\/code> \u0644\u06cc\u0633\u062a\u06cc \u0627\u0632 \u062f\u0633\u062a\u0648\u0631\u0627\u062a \u0645\u062a\u0639\u0644\u0642 \u0628\u0647 \u0627\u0633\u0644\u0627\u062a \u062e\u0648\u062f \u0631\u0627 \u0627\u0632 \u0645\u06cc\u0627\u0646 \u0627\u0646\u062a\u062e\u0627\u0628 \u0645\u06cc \u06a9\u0646\u062f <code>t_ds_command<\/code> \u062c\u062f\u0648\u0644 \u0628\u0631\u0627\u06cc \u067e\u0631\u062f\u0627\u0632\u0634 \u0628\u06cc\u0627\u0646\u06cc\u0647 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u0628\u0647 \u0634\u0631\u062d \u0632\u06cc\u0631 \u0627\u0633\u062a:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>\n<select id=\"queryCommandPageBySlot\" resulttype=\"org.apache.dolphinscheduler.dao.entity.Command\">\n        select *\n        from t_ds_command\n        where id % #{masterCount} = #{thisMasterSlot}\n        order by process_instance_priority, id asc\n            limit #{limit}\n<\/select>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>III. \u0627\u06cc\u0646 <code>MasterSchedulerBootstrap<\/code> \u0646\u0638\u0631\u0633\u0646\u062c\u06cc \u0647\u0627\u06cc \u062d\u0644\u0642\u0647 \u0627\u06cc \u0628\u0631\u0627\u06cc \u067e\u0631\u062f\u0627\u0632\u0634 \u062f\u0633\u062a\u0648\u0631\u0627\u062a. \u0627\u0644\u0641 \u0631\u0627 \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc \u06a9\u0646\u062f <code>ProcessInstance<\/code> \u0627\u0632 \u062f\u0633\u062a\u0648\u0631 \u0648\u0638\u06cc\u0641\u0647 \u0648 \u0645\u06cc\u0632\u0628\u0627\u0646 \u0627\u0635\u0644\u06cc\u060c \u062f\u0631\u062c \u0645\u06cc \u06a9\u0646\u062f <code>ProcessInstance<\/code> \u0634\u06cc \u0628\u0647 <code>t_ds_process_instance<\/code> \u062c\u062f\u0648\u0644\u060c \u0648 \u06cc\u06a9 \u06a9\u0627\u0631 \u0627\u062c\u0631\u0627\u06cc\u06cc \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc \u06a9\u0646\u062f <code>workflowExecuteRunnable<\/code> \u06a9\u0647 \u062d\u0627\u0648\u06cc \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0632\u0645\u06cc\u0646\u0647 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u0644\u0627\u0632\u0645 \u0627\u0633\u062a. \u0627\u06cc\u0646 <code>workflowExecuteRunnable<\/code> \u0628\u0647 \u0635\u0648\u0631\u062a \u0645\u062d\u0644\u06cc \u062f\u0631 \u062d\u0627\u0641\u0638\u0647 \u067e\u0646\u0647\u0627\u0646 \u0630\u062e\u06cc\u0631\u0647 \u0645\u06cc \u0634\u0648\u062f <code>processInstanceExecCacheManager<\/code>. \u062f\u0631 \u0647\u0645\u0627\u0646 \u0632\u0645\u0627\u0646\u060c <code>WorkflowEventType.START_WORKFLOW<\/code> \u0627\u0632 <code>ProcessInstance<\/code> \u062a\u0648\u0644\u06cc\u062f \u0645\u06cc \u0634\u0648\u062f \u062f\u0631 <code>workflowEventQueue<\/code> \u0635\u0641<\/p>\n<p>\u0645\u0631\u0627\u062d\u0644 \u0630\u06a9\u0631 \u0634\u062f\u0647 \u062f\u0631 \u0628\u0627\u0644\u0627 \u067e\u0633 \u0627\u0632 \u06a9\u0644\u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u0631\u0648\u06cc \u062f\u06a9\u0645\u0647 \u0634\u0631\u0648\u0639 \u06a9\u0627\u0631 \u062f\u0631 \u0635\u0641\u062d\u0647 \u0648\u0628 \u0631\u062e \u0645\u06cc \u062f\u0647\u062f. \u0628\u0627 \u0627\u06cc\u0646 \u062d\u0627\u0644\u060c \u0645\u0648\u0636\u0648\u0639\u06cc \u06a9\u0647 \u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0628\u0647 \u0622\u0646 \u067e\u0631\u062f\u0627\u062e\u062a\u0647 \u0645\u06cc \u0634\u0648\u062f \u0645\u0631\u0628\u0648\u0637 \u0628\u0647 \u0632\u0645\u0627\u0646 \u0628\u0646\u062f\u06cc \u062f\u0648\u0631\u0647 \u0627\u06cc \u062f\u0631 \u0627\u0633\u062a\u0627\u062f \u0627\u0633\u062a. \u067e\u0633 \u0627\u0632 \u0628\u0631\u0631\u0633\u06cc \u0645\u0633\u062a\u0646\u062f\u0627\u062a\u060c \u0648\u0638\u06cc\u0641\u0647 \u0632\u0645\u0627\u0646 \u0628\u0646\u062f\u06cc \u062f\u0648\u0631\u0647 \u0627\u06cc \u062a\u0648\u0633\u0637 MasterServer \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u062f\u0627\u062f\u0647 \u0641\u0631\u0645\u0627\u0646 \u06a9\u067e\u0633\u0648\u0644\u0647 \u0645\u06cc \u0634\u0648\u062f \u0648 \u062f\u0631 \u0622\u0646 \u062f\u0631\u062c \u0645\u06cc \u0634\u0648\u062f. <code>t_ds_process_instance<\/code> \u062c\u062f\u0648\u0644 \u0645\u0631\u0627\u062d\u0644 \u0628\u0639\u062f\u06cc \u0628\u0647 \u0634\u0631\u062d \u0632\u06cc\u0631 \u0627\u0633\u062a \u0648 \u0631\u0648\u0646\u062f \u06a9\u0644\u06cc \u0628\u0647 \u0634\u0631\u062d \u0632\u06cc\u0631 \u0627\u0633\u062a:<\/p>\n<ol>\n<li>\n<p><strong>\u0627\u0631\u0633\u0627\u0644 \u0641\u0631\u0645\u0627\u0646<\/strong>: \u062a\u0648\u0633\u0637 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u06af\u0631\u062f\u0634 \u06a9\u0627\u0631 \u0627\u0631\u0633\u0627\u0644\u06cc \u06a9\u0627\u0631\u0628\u0631\u060c MasterServer \u0622\u0646 \u0631\u0627 \u062f\u0631 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u0641\u0631\u0645\u0627\u0646 \u06a9\u067e\u0633\u0648\u0644\u0647 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u0622\u0646 \u0631\u0627 \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0642\u0631\u0627\u0631 \u0645\u06cc \u062f\u0647\u062f.<\/p>\n<\/li>\n<li>\n<p><strong>\u062a\u06a9\u0644\u06cc\u0641<\/strong>: MasterServer \u0628\u0647 \u0637\u0648\u0631 \u0645\u062f\u0627\u0648\u0645 \u062f\u0633\u062a\u0648\u0631\u0627\u062a \u0645\u0639\u0644\u0642 \u0631\u0627 \u062c\u0633\u062a\u062c\u0648 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u0648\u0638\u0627\u06cc\u0641 \u0645\u0631\u0628\u0648\u0637\u0647 \u0631\u0627 \u0628\u0647 \u0622\u0646 \u0627\u062e\u062a\u0635\u0627\u0635 \u0645\u06cc \u062f\u0647\u062f. <code>ProcessInstance<\/code> \u0628\u0631 \u0627\u0633\u0627\u0633 \u0628\u0627\u0631<\/p>\n<\/li>\n<li>\n<p><strong>\u0627\u062c\u0631\u0627\u06cc \u0648\u0638\u06cc\u0641\u0647<\/strong>: \u0628\u0631 \u0627\u0633\u0627\u0633 \u0648\u0627\u0628\u0633\u062a\u06af\u06cc \u0647\u0627\u06cc DAG (Directed Acyclic Graph)\u060c WorkerServer \u0648\u0638\u0627\u06cc\u0641\u06cc \u0631\u0627 \u06a9\u0647 \u0648\u0627\u0628\u0633\u062a\u06af\u06cc \u0646\u062f\u0627\u0631\u0646\u062f \u0627\u0648\u0644\u0648\u06cc\u062a \u0628\u0646\u062f\u06cc \u0645\u06cc \u06a9\u0646\u062f \u0648 \u0628\u0647 \u062a\u062f\u0631\u06cc\u062c \u0633\u0627\u06cc\u0631 \u0648\u0638\u0627\u06cc\u0641 \u0631\u0627 \u0628\u0631 \u0627\u0633\u0627\u0633 \u0627\u0648\u0644\u0648\u06cc\u062a \u0622\u0646\u0647\u0627 \u0627\u062c\u0631\u0627 \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<\/li>\n<li>\n<p><strong>\u0628\u0627\u0632\u062e\u0648\u0631\u062f \u0648\u0636\u0639\u06cc\u062a<\/strong>: \u062f\u0631 \u062d\u06cc\u0646 \u0627\u062c\u0631\u0627\u06cc \u0648\u0638\u06cc\u0641\u0647\u060c WorkerServer \u0628\u0647 \u0635\u0648\u0631\u062a \u062f\u0648\u0631\u0647 \u0627\u06cc \u0628\u0627 MasterServer \u062a\u0645\u0627\u0633 \u0645\u06cc \u06af\u06cc\u0631\u062f \u062a\u0627 \u067e\u06cc\u0634\u0631\u0641\u062a \u0648 \u0648\u0636\u0639\u06cc\u062a \u0627\u062c\u0631\u0627\u06cc \u0648\u0638\u0627\u06cc\u0641 \u0631\u0627 \u0645\u0637\u0644\u0639 \u06a9\u0646\u062f.<\/p>\n<\/li>\n<\/ol>\n<p>\u0645\u0648\u0636\u0648\u0639 \u0632\u0645\u0627\u0646\u06cc \u067e\u06cc\u0634 \u0645\u06cc \u0622\u06cc\u062f \u06a9\u0647 <strong>\u0627\u0633\u062a\u0627\u062f<\/strong> \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u062c\u062f\u062f &#8211; \u0628\u0627\u0639\u062b \u0645\u06cc \u0634\u0648\u062f \u062a\u0639\u062f\u0627\u062f \u0632\u06cc\u0627\u062f\u06cc \u0627\u0632 \u06a9\u0627\u0631\u0647\u0627 \u062f\u0631 \u0635\u0641 \u0642\u0631\u0627\u0631 \u06af\u06cc\u0631\u0646\u062f <code>t_ds_command<\/code> \u062c\u062f\u0648\u0644\u060c \u0628\u0647 \u0648\u06cc\u0698\u0647 \u0648\u0638\u0627\u06cc\u0641 \u062f\u0648\u0631\u0647 \u0627\u06cc.<\/p>\n<p>\u062f\u0631 DolphinScheduler 3.2.1\u060c \u0646\u0645\u0648\u0646\u0647 \u062f\u0627\u062f\u0647 \u0628\u0631\u0627\u06cc \u062c\u062f\u0648\u0644 t_ds_command \u0628\u0647 \u0634\u0631\u062d \u0632\u06cc\u0631 \u0627\u0633\u062a:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>\nid  |command_type|process_definition_code|process_definition_version|process_instance_id|command_param                        |task_depend_type|failure_strategy|warning_type|warning_group_id|schedule_time      |start_time         |executor_id|update_time        |process_instance_priority|worker_group|tenant_code|environment_code|dry_run|test_flag|\n----+------------+-----------------------+--------------------------+-------------------+-------------------------------------+----------------+----------------+------------+----------------+-------------------+-------------------+-----------+-------------------+-------------------------+------------+-----------+----------------+-------+---------+\n1988|           6|         15921642898976|                         4|                  0|{\"schedule_timezone\":\"Asia\/Shanghai\"}|               2|               1|           0|               0|2024-12-11 00:36:40|2024-12-11 00:39:01|          2|2024-12-11 00:39:01|                        2|default     |default    |              -1|      0|        0|\n1989|           6|         15921642898976|                         4|                  0|{\"schedule_timezone\":\"Asia\/Shanghai\"}|               2|               1|           0|               0|2024-12-11 00:36:50|2024-12-11 00:39:01|          2|2024-12-11 00:39:01|                        2|default     |default    |              -1|      0|        0|\n1990|           6|         15921642898976|                         4|                  0|{\"schedule_timezone\":\"Asia\/Shanghai\"}|               2|               1|           0|               0|2024-12-11 00:37:00|2024-12-11 00:39:01|          2|2024-12-11 00:39:01|                        2|default     |default    |              -1|      0|        0|\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>enum command_type \u062f\u0631 \u06a9\u062f \u0645\u0646\u0628\u0639 \u062a\u062d\u062a CommandType \u062a\u0639\u0631\u06cc\u0641 \u0634\u062f\u0647 \u0627\u0633\u062a \u0648 \u0645\u062d\u062a\u0648\u0627\u06cc \u0622\u0646 \u0628\u0647 \u0634\u0631\u062d \u0632\u06cc\u0631 \u0627\u0633\u062a:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>\n\/**\n * command types\n * 0 start a new process\n * 1 start a new process from current nodes\n * 2 recover tolerance fault process\n * 3 recover suspended process\n * 4 start process from failure task nodes\n * 5 complement data\n * 6 start a new process from scheduler\n * 7 repeat running a process\n * 8 pause a process\n * 9 stop a process\n * 10 recover waiting thread\n * 11 recover serial wait\n * 12 start a task node in a process instance\n *\/\nSTART_PROCESS(0, \"start a new process\"),\nSTART_CURRENT_TASK_PROCESS(1, \"start a new process from current nodes\"),\nRECOVER_TOLERANCE_FAULT_PROCESS(2, \"recover tolerance fault process\"),\nRECOVER_SUSPENDED_PROCESS(3, \"recover suspended process\"),\nSTART_FAILURE_TASK_PROCESS(4, \"start process from failure task nodes\"),\nCOMPLEMENT_DATA(5, \"complement data\"),\nSCHEDULER(6, \"start a new process from scheduler\"),\nREPEAT_RUNNING(7, \"repeat running a process\"),\nPAUSE(8, \"pause a process\"),\nSTOP(9, \"stop a process\"),\nRECOVER_WAITING_THREAD(10, \"recover waiting thread\"),\nRECOVER_SERIAL_WAIT(11, \"recover serial wait\"),\nEXECUTE_TASK(12, \"start a task node in a process instance\"),\nDYNAMIC_GENERATION(13, \"dynamic generation\"),\n;\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u062f\u0644\u06cc\u0644 \u0627\u06cc\u0646 \u0631\u0641\u062a\u0627\u0631 \u062f\u0631 \u0645\u06a9\u0627\u0646\u06cc\u0632\u0645 \u062a\u062d\u0645\u0644 \u062e\u0637\u0627 \u062e\u0648\u062f \u0627\u0633\u062a\u0627\u062f \u0646\u0647\u0641\u062a\u0647 \u0627\u0633\u062a. \u0627\u06cc\u0646 \u0645\u06a9\u0627\u0646\u06cc\u0633\u0645 \u062a\u062d\u0645\u0644 \u062e\u0637\u0627 \u0631\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646 \u0628\u0647 \u0686\u0646\u062f\u06cc\u0646 \u0645\u0627\u0698\u0648\u0644 \u0628\u0647 \u0634\u0631\u062d \u0632\u06cc\u0631 \u062a\u0642\u0633\u06cc\u0645 \u06a9\u0631\u062f:<\/p>\n<ol>\n<li>\n<p><strong>\u062a\u062d\u0645\u0644 \u062e\u0637\u0627\u06cc \u0627\u0633\u062a\u0627\u062f<\/strong>: \u062f\u0631 \u06cc\u06a9 \u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc \u0686\u0646\u062f \u0627\u0633\u062a\u0627\u062f\u060c \u06cc\u06a9 \u06af\u0631\u0647 Active Master \u0645\u0633\u0626\u0648\u0644 \u0631\u0633\u06cc\u062f\u06af\u06cc \u0628\u0647 \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u200c\u0647\u0627\u06cc \u0632\u0645\u0627\u0646\u200c\u0628\u0646\u062f\u06cc \u06a9\u0627\u0631 \u0627\u0633\u062a\u060c \u062f\u0631 \u062d\u0627\u0644\u06cc \u06a9\u0647 \u0628\u0642\u06cc\u0647 \u0628\u0647\u200c\u0639\u0646\u0648\u0627\u0646 Standby Master \u0639\u0645\u0644 \u0645\u06cc\u200c\u06a9\u0646\u0646\u062f. \u0627\u06af\u0631 Active Master \u0627\u0632 \u06a9\u0627\u0631 \u0628\u06cc\u0641\u062a\u062f\u060c \u06cc\u06a9 Standby Master \u0628\u0647 \u0637\u0648\u0631 \u062e\u0648\u062f\u06a9\u0627\u0631 \u0648\u0638\u0627\u06cc\u0641 \u062e\u0648\u062f \u0631\u0627 \u0628\u0631 \u0639\u0647\u062f\u0647 \u0645\u06cc \u06af\u06cc\u0631\u062f \u062a\u0627 \u0627\u0632 \u0639\u0645\u0644\u06a9\u0631\u062f \u0639\u0627\u062f\u06cc \u0633\u06cc\u0633\u062a\u0645 \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u062d\u0627\u0635\u0644 \u06a9\u0646\u062f. \u0627\u06cc\u0646 \u0641\u0631\u0622\u06cc\u0646\u062f \u0627\u0632 \u0637\u0631\u06cc\u0642 ZooKeeper \u0645\u062f\u06cc\u0631\u06cc\u062a \u0645\u06cc \u0634\u0648\u062f \u06a9\u0647 \u0645\u0633\u0626\u0648\u0644\u06cc\u062a \u0627\u0646\u062a\u062e\u0627\u0628 \u06af\u0631\u0647 Active Master \u0648 \u0646\u0638\u0627\u0631\u062a \u0628\u0631 \u0648\u0636\u0639\u06cc\u062a \u06af\u0631\u0647 \u0631\u0627 \u0628\u0631 \u0639\u0647\u062f\u0647 \u062f\u0627\u0631\u062f.<\/p>\n<\/li>\n<li>\n<p><strong>\u0647\u0645\u06af\u0627\u0645 \u0633\u0627\u0632\u06cc \u062d\u0627\u0644\u062a<\/strong>: \u0686\u0646\u062f\u06cc\u0646 \u06af\u0631\u0647 Master \u062d\u0627\u0644\u062a \u0647\u0627\u06cc \u062e\u0648\u062f \u0631\u0627 \u0647\u0645\u06af\u0627\u0645 \u0645\u06cc \u06a9\u0646\u0646\u062f \u062a\u0627 \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u062d\u0627\u0635\u0644 \u06a9\u0646\u0646\u062f \u06a9\u0647 \u062f\u0631 \u0635\u0648\u0631\u062a \u062e\u0631\u0627\u0628\u06cc Active Master\u060c Standby Master \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u06cc\u0632\u06cc \u06a9\u0627\u0631 \u0631\u0627 \u0628\u0647 \u0637\u0648\u0631 \u06cc\u06a9\u067e\u0627\u0631\u0686\u0647 \u0628\u0647 \u0639\u0647\u062f\u0647 \u0628\u06af\u06cc\u0631\u062f.<\/p>\n<\/li>\n<li>\n<p><strong>\u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0639\u06cc\u0628<\/strong>: \u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u06cc\u06a9 \u06af\u0631\u0647 \u0627\u0635\u0644\u06cc \u0627\u0632 \u06a9\u0627\u0631 \u0645\u06cc \u0627\u0641\u062a\u062f\u060c \u0633\u0627\u06cc\u0631 \u06af\u0631\u0647 \u0647\u0627\u06cc \u0627\u0635\u0644\u06cc \u0627\u0632 \u0645\u06a9\u0627\u0646\u06cc\u0633\u0645 ZooKeeper&#39;s Watcher \u0628\u0631\u0627\u06cc \u0634\u0646\u0627\u0633\u0627\u06cc\u06cc \u062e\u0631\u0627\u0628\u06cc \u0648 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0641\u0631\u0622\u06cc\u0646\u062f\u0647\u0627\u06cc \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u062e\u0637\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u0646\u062f.<\/p>\n<\/li>\n<li>\n<p><strong>\u062a\u062d\u0645\u0644 \u062e\u0637\u0627 \u0628\u0631\u0627\u06cc \u0648\u0638\u0627\u06cc\u0641 \u062f\u0631 \u062d\u0627\u0644 \u0627\u062c\u0631\u0627<\/strong>: \u067e\u0633 \u0627\u0632 \u062e\u0631\u0627\u0628\u06cc \u06cc\u06a9 \u06af\u0631\u0647 Master\u060c \u06cc\u06a9 Master \u062c\u062f\u06cc\u062f \u0628\u0627 \u062f\u0633\u062a\u0631\u0633\u06cc \u0628\u0647 \u0622\u062f\u0631\u0633 Master \u0634\u06a9\u0633\u062a \u062e\u0648\u0631\u062f\u0647 \u0648 \u0622\u0631\u0627\u06cc\u0647 \u0648\u0636\u0639\u06cc\u062a \u06af\u0631\u062f\u0634 \u06a9\u0627\u0631 \u062f\u0631 \u062d\u0627\u0644 \u0627\u0646\u062c\u0627\u0645\u060c \u0641\u0647\u0631\u0633\u062a\u06cc \u0627\u0632 ProcessInstance \u0647\u0627\u06cc\u06cc \u0631\u0627 \u06a9\u0647 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u062a\u062d\u0645\u0644 \u062e\u0637\u0627 \u062f\u0627\u0631\u0646\u062f\u060c \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0645\u06cc \u06a9\u0646\u062f. \u0627\u06cc\u0646 \u0644\u06cc\u0633\u062a \u0633\u067e\u0633 \u062f\u0631 \u062f\u0631\u062c \u0645\u06cc \u0634\u0648\u062f <code>t_ds_command<\/code> \u062c\u062f\u0648\u0644\u060c \u0648 \u0641\u0631\u0622\u06cc\u0646\u062f \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u06cc\u0632\u06cc \u0645\u0646\u0638\u0645 (\u0627\u0633\u062a\u0627\u062f \u0648\u0638\u0627\u06cc\u0641 \u0631\u0627 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0648 \u0632\u0645\u0627\u0646 \u0628\u0646\u062f\u06cc \u0645\u06cc \u06a9\u0646\u062f \u0648 \u0628\u0647 \u062f\u0646\u0628\u0627\u0644 \u0622\u0646 \u0627\u062c\u0631\u0627\u06cc Worker) \u0627\u0632 \u0633\u0631 \u06af\u0631\u0641\u062a\u0647 \u0645\u06cc \u0634\u0648\u062f.<\/p>\n<\/li>\n<li>\n<p><strong>\u0642\u0641\u0644 \u0647\u0627\u06cc \u062a\u0648\u0632\u06cc\u0639 \u0634\u062f\u0647<\/strong>: \u062f\u0631 \u0637\u0648\u0644 \u0641\u0631\u0622\u06cc\u0646\u062f \u062a\u062d\u0645\u0644 \u062e\u0637\u0627\u060c \u06af\u0631\u0647\u200c\u0647\u0627\u06cc Master \u0627\u0632 \u0645\u06a9\u0627\u0646\u06cc\u0633\u0645 \u0642\u0641\u0644 \u062a\u0648\u0632\u06cc\u0639 \u0634\u062f\u0647 ZooKeeper\u060c \u0647\u0645\u0631\u0627\u0647 \u0628\u0627 \u062a\u062e\u0635\u06cc\u0635 \u0634\u0646\u0627\u0633\u0647\u200c\u0647\u0627\u06cc \u062e\u0627\u0635 \u0628\u0647 <code>command<\/code> \u062c\u062f\u0648\u0644\u060c \u0628\u0631\u0627\u06cc \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u0627\u0632 \u0627\u06cc\u0646\u06a9\u0647 \u062a\u0646\u0647\u0627 \u06cc\u06a9 \u06af\u0631\u0647 \u0627\u0635\u0644\u06cc \u062f\u0631 \u06cc\u06a9 \u0632\u0645\u0627\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u062a\u062d\u0645\u0644 \u062e\u0637\u0627 \u0631\u0627 \u0627\u0646\u062c\u0627\u0645 \u0645\u06cc \u062f\u0647\u062f. \u0627\u06cc\u0646 \u0645\u0627\u0646\u0639 \u0627\u0632 \u0627\u0646\u062c\u0627\u0645 \u0647\u0645\u0632\u0645\u0627\u0646 \u0686\u0646\u062f\u06cc\u0646 \u06af\u0631\u0647 Master \u0645\u06cc \u0634\u0648\u062f.<\/p>\n<\/li>\n<li>\n<p><strong>\u0631\u0634\u062a\u0647 \u062a\u062d\u0645\u0644 \u062e\u0637\u0627 \u062f\u0648\u0631\u0647 \u0627\u06cc<\/strong>: \u062c\u062f\u0627 \u0627\u0632 \u062a\u062d\u0645\u0644 \u062e\u0637\u0627 \u06a9\u0647 \u062a\u0648\u0633\u0637 \u0631\u0648\u06cc\u062f\u0627\u062f\u0647\u0627\u06cc ZooKeeper \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc \u0634\u0648\u062f\u060c DolphinScheduler \u0647\u0645\u0686\u0646\u06cc\u0646 \u06cc\u06a9 \u0631\u0634\u062a\u0647 \u062f\u0648\u0631\u0647 \u0627\u06cc \u0628\u0647 \u0646\u0627\u0645 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0645\u06cc \u06a9\u0646\u062f. <code>FailoverExecuteThread<\/code>. \u0627\u06cc\u0646 \u0631\u0634\u062a\u0647 \u0645\u0633\u0626\u0648\u0644 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0646\u0645\u0648\u0646\u0647 \u0647\u0627\u06cc \u06af\u0631\u062f\u0634 \u06a9\u0627\u0631 \u067e\u0633 \u0627\u0632 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u062c\u062f\u062f Master \u0627\u0633\u062a.<\/p>\n<\/li>\n<li>\n<p><strong>\u062f\u0648\u0628\u0627\u0631\u0647 \u06a9\u0627\u0631 \u06a9\u0646\u06cc\u062f<\/strong>: DolphinScheduler \u0647\u0645\u0686\u0646\u06cc\u0646 \u0627\u0632 \u0645\u06a9\u0627\u0646\u06cc\u0632\u0645 \u062a\u06a9\u0631\u0627\u0631 \u06a9\u0627\u0631 \u067e\u0633 \u0627\u0632 \u0634\u06a9\u0633\u062a \u06a9\u0627\u0631 \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0645\u06cc \u06a9\u0646\u062f. \u0627\u06cc\u0646 \u062a\u0644\u0648\u0631\u0627\u0646\u0633 \u062e\u0637\u0627\u06cc \u062e\u0631\u0627\u0628\u06cc \u0633\u0631\u0648\u06cc\u0633 \u0631\u0627 \u062a\u06a9\u0645\u06cc\u0644 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u062a\u0636\u0645\u06cc\u0646 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0648\u0638\u0627\u06cc\u0641 \u062f\u0631 \u0646\u0647\u0627\u06cc\u062a \u0628\u0627 \u0645\u0648\u0641\u0642\u06cc\u062a \u0627\u062c\u0631\u0627 \u0645\u06cc \u0634\u0648\u0646\u062f.<\/p>\n<\/li>\n<\/ol>\n<p>\u0628\u0646\u0627\u0628\u0631\u0627\u06cc\u0646\u060c \u0628\u0631 \u0627\u0633\u0627\u0633 \u0627\u0635\u0644 \u0648 \u0628\u0627\u0632\u062a\u0648\u0644\u06cc\u062f\u060c \u062f\u0631 \u0627\u0628\u062a\u062f\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646 \u0627\u0633\u062a\u0646\u0628\u0627\u0637 \u06a9\u0631\u062f \u06a9\u0647 \u062a\u062d\u0645\u0644 \u062e\u0637\u0627 \u062a\u0648\u0633\u0637 \u06cc\u06a9 \u0646\u062e \u062e\u0627\u0635 \u062f\u0631 \u0647\u0646\u06af\u0627\u0645 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc Master \u0627\u0646\u062c\u0627\u0645 \u0645\u06cc \u0634\u0648\u062f. \u062f\u0631 \u0645\u0631\u062d\u0644\u0647 \u0628\u0639\u062f\u060c \u0645\u0627 \u0628\u0627\u06cc\u062f \u06a9\u062f \u0645\u0646\u0628\u0639 \u0631\u0627 \u0628\u0631\u0627\u06cc \u062a\u0623\u06cc\u06cc\u062f \u0627\u06cc\u0646 \u0645\u0648\u0636\u0648\u0639 \u0628\u0631\u0631\u0633\u06cc \u06a9\u0646\u06cc\u0645.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D8%AA%D8%AC%D8%B2%DB%8C%D9%87_%D9%88_%D8%AA%D8%AD%D9%84%DB%8C%D9%84_%DA%A9%D8%AF_%D9%85%D9%86%D8%A8%D8%B9\"><\/span>\n<p>  \u062a\u062c\u0632\u06cc\u0647 \u0648 \u062a\u062d\u0644\u06cc\u0644 \u06a9\u062f \u0645\u0646\u0628\u0639<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u062f\u0631 <code>org.apache.dolphinscheduler.server.master.MasterServer<\/code> \u06a9\u0644\u0627\u0633\u060c \u062f\u0631 \u0637\u0648\u0644 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc Master\u060c \u06cc\u06a9 \u0646\u0642\u0637\u0647 \u0648\u0631\u0648\u062f\u06cc \u0628\u0631\u0627\u06cc \u0622\u0646 \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f <code>run()<\/code> \u0631\u0648\u0634:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>\/**\n * run master server\n *\/\n@PostConstruct\npublic void run() throws SchedulerException {\n    \/\/ init rpc server\n    this.masterRPCServer.start();\n    \/\/ install task plugin\n    this.taskPluginManager.loadPlugin();\n    this.masterSlotManager.start();\n    \/\/ self tolerant\n    this.masterRegistryClient.start();\n    this.masterRegistryClient.setRegistryStoppable(this);\n    this.masterSchedulerBootstrap.start();\n    this.eventExecuteService.start();\n    this.failoverExecuteThread.start();\n    this.schedulerApi.start();\n    this.taskGroupCoordinator.start();\n    MasterServerMetrics.registerMasterCpuUsageGauge(() -&gt; {\n        SystemMetrics systemMetrics = metricsProvider.getSystemMetrics();\n        return systemMetrics.getTotalCpuUsedPercentage();\n    });\n    MasterServerMetrics.registerMasterMemoryAvailableGauge(() -&gt; {\n        SystemMetrics systemMetrics = metricsProvider.getSystemMetrics();\n        return (systemMetrics.getSystemMemoryMax() - systemMetrics.getSystemMemoryUsed()) \/ 1024.0 \/ 1024 \/ 1024;\n    });\n    MasterServerMetrics.registerMasterMemoryUsageGauge(() -&gt; {\n        SystemMetrics systemMetrics = metricsProvider.getSystemMetrics();\n        return systemMetrics.getJvmMemoryUsedPercentage();\n    });\n    Runtime.getRuntime().addShutdownHook(new Thread(() -&gt; {\n        if (!ServerLifeCycleManager.isStopped()) {\n            close(\"MasterServer shutdownHook\");\n        }\n    }));\n}\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0627\u0632 \u06a9\u062f \u0628\u0627\u0644\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646 \u062f\u0631\u06cc\u0627\u0641\u062a \u06a9\u0647 Master \u0628\u0627 \u0627\u062c\u0631\u0627\u06cc:<\/p>\n<ul>\n<li>\n<strong>masterRPCServer.start()<\/strong>: \u0633\u0631\u0648\u0631 RPC \u0631\u0627 \u0628\u0631\u0627\u06cc \u0627\u0631\u062a\u0628\u0627\u0637 \u06af\u0631\u0647 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0648 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u06cc \u06a9\u0646\u062f.<\/li>\n<li>\n<strong>taskPluginManager.loadPlugin()<\/strong>: \u067e\u0644\u0627\u06af\u06cc\u0646 \u0647\u0627\u06cc \u0648\u0638\u06cc\u0641\u0647 \u0631\u0627 \u0628\u0627\u0631\u06af\u06cc\u0631\u06cc \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0627\u0646\u0648\u0627\u0639 \u0648\u0638\u0627\u06cc\u0641 DolphinScheduler \u0631\u0627 \u06af\u0633\u062a\u0631\u0634 \u0645\u06cc \u062f\u0647\u062f.<\/li>\n<li>\n<strong>masterSlotManager.start()<\/strong>: \u0645\u062f\u06cc\u0631 \u0627\u0633\u0644\u0627\u062a Master \u0631\u0627 \u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u06cc\u200c\u06a9\u0646\u062f \u06a9\u0647 \u0645\u0633\u0626\u0648\u0644 \u0645\u062f\u06cc\u0631\u06cc\u062a \u062c\u0627\u06cc\u06af\u0627\u0647\u200c\u0647\u0627\u06cc \u0645\u0646\u0627\u0628\u0639 Master \u0628\u0631\u0627\u06cc \u0632\u0645\u0627\u0646\u200c\u0628\u0646\u062f\u06cc \u0648\u0638\u0627\u06cc\u0641 \u0627\u0633\u062a.<\/li>\n<li>\n<strong>masterRegistryClient.start()<\/strong>: \u0645\u0634\u062a\u0631\u06cc \u0631\u062c\u06cc\u0633\u062a\u0631\u06cc Master \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0645\u0633\u0626\u0648\u0644 \u062b\u0628\u062a \u06af\u0631\u0647 Master \u062f\u0631 \u0633\u0631\u0648\u06cc\u0633 \u0647\u0645\u0627\u0647\u0646\u06af\u06cc \u062a\u0648\u0632\u06cc\u0639 \u0634\u062f\u0647 (\u0645\u0627\u0646\u0646\u062f ZooKeeper) \u0627\u0633\u062a.<\/li>\n<li>\n<strong>masterRegistryClient.setRegistryStoppable(\u0627\u06cc\u0646)<\/strong>: \u0634\u06cc\u0621 \u0642\u0627\u0628\u0644 \u062a\u0648\u0642\u0641 \u0631\u0627 \u0628\u0631\u0627\u06cc \u0633\u0631\u0648\u06cc\u0633 \u06af\u06cc\u0631\u0646\u062f\u0647 \u0631\u062c\u06cc\u0633\u062a\u0631\u06cc \u062a\u0646\u0638\u06cc\u0645 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u0628\u0647 \u0622\u0646 \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc \u062f\u0647\u062f \u0648\u0642\u062a\u06cc Master \u0645\u062a\u0648\u0642\u0641 \u0645\u06cc \u0634\u0648\u062f \u067e\u0627\u06a9 \u0634\u0648\u062f.<\/li>\n<li>\n<strong>masterSchedulerBootstrap.start()<\/strong>: \u0633\u0631\u0648\u06cc\u0633 \u0628\u0648\u062a \u0627\u0633\u062a\u0631\u067e \u0632\u0645\u0627\u0646\u200c\u0628\u0646\u062f\u06cc Master \u0631\u0627 \u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u06cc\u200c\u06a9\u0646\u062f \u06a9\u0647 \u0633\u0631\u0648\u06cc\u0633\u200c\u0647\u0627\u06cc \u0645\u0631\u0628\u0648\u0637 \u0628\u0647 \u0632\u0645\u0627\u0646\u200c\u0628\u0646\u062f\u06cc \u0631\u0627 \u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/li>\n<li>\n<strong>eventExecuteService.start()<\/strong>: \u0633\u0631\u0648\u06cc\u0633 \u0627\u062c\u0631\u0627\u06cc \u0631\u0648\u06cc\u062f\u0627\u062f \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u06cc \u06a9\u0646\u062f\u060c \u06a9\u0647 \u0631\u0648\u06cc\u062f\u0627\u062f\u0647\u0627 \u0631\u0627 \u062f\u0631 \u062c\u0631\u06cc\u0627\u0646 \u06a9\u0627\u0631 \u0645\u062f\u06cc\u0631\u06cc\u062a \u0645\u06cc \u06a9\u0646\u062f\u060c \u0645\u0627\u0646\u0646\u062f \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u0648\u0636\u0639\u06cc\u062a \u0648\u0638\u06cc\u0641\u0647.<\/li>\n<li>\n<strong>failoverExecuteThread.start()<\/strong>: \u0631\u0634\u062a\u0647 \u0627\u062c\u0631\u0627\u06cc failover \u0631\u0627 \u0634\u0631\u0648\u0639 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0648\u0638\u06cc\u0641\u0647 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0627\u062c\u0631\u0627\u06cc \u06a9\u0627\u0631 \u0631\u0627 \u067e\u0633 \u0627\u0632 \u0627\u0632 \u06a9\u0627\u0631 \u0627\u0641\u062a\u0627\u062f\u0646 Master \u0628\u0631 \u0639\u0647\u062f\u0647 \u062f\u0627\u0631\u062f.<\/li>\n<li>\n<strong>SchedulerApi.start()<\/strong>: \u0633\u0631\u0648\u06cc\u0633 API \u0632\u0645\u0627\u0646\u200c\u0628\u0646\u062f\u06cc \u0631\u0627 \u0634\u0631\u0648\u0639 \u0645\u06cc\u200c\u06a9\u0646\u062f \u0648 \u0631\u0627\u0628\u0637\u200c\u0647\u0627\u06cc \u0645\u0631\u0628\u0648\u0637 \u0628\u0647 \u0632\u0645\u0627\u0646\u200c\u0628\u0646\u062f\u06cc \u0631\u0627 \u0628\u0631\u0627\u06cc \u062a\u0645\u0627\u0633\u200c\u0647\u0627\u06cc \u062e\u0627\u0631\u062c\u06cc \u0627\u0631\u0627\u0626\u0647 \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/li>\n<li>\n<strong>taskGroupCoordinator.start()<\/strong>: \u0647\u0645\u0627\u0647\u0646\u06af \u06a9\u0646\u0646\u062f\u0647 \u06af\u0631\u0648\u0647 \u0648\u0638\u06cc\u0641\u0647 \u0631\u0627 \u0634\u0631\u0648\u0639 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0627\u062c\u0631\u0627\u06cc \u0648\u0638\u0627\u06cc\u0641 \u0631\u0627 \u062f\u0631 \u06cc\u06a9 \u06af\u0631\u0648\u0647 \u06a9\u0627\u0631\u06cc \u0647\u0645\u0627\u0647\u0646\u06af \u0645\u06cc \u06a9\u0646\u062f.<\/li>\n<\/ul>\n<p>\u0627\u0632 \u0637\u0631\u06cc\u0642 \u0628\u0627\u0632\u0631\u0633\u06cc \u06a9\u062f \u0645\u0646\u0628\u0639\u060c \u0645\u0634\u062e\u0635 \u0645\u06cc \u0634\u0648\u062f \u06a9\u0647 \u0645\u0647\u0645 \u062a\u0631\u06cc\u0646 \u0628\u062e\u0634\u060c <strong>failoverExecuteThread<\/strong>\u060c \u062f\u0631 \u0645\u0648\u0631\u062f \u0627\u062c\u0631\u0627\u06cc \u0645\u062c\u062f\u062f \u0648\u0638\u0627\u06cc\u0641 \u062f\u0648\u0631\u0647 \u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u06cc\u0632\u06cc \u0646\u0634\u062f\u0647 \u0646\u06cc\u0633\u062a\u060c \u0628\u0644\u06a9\u0647 \u062f\u0631 \u0645\u0648\u0631\u062f \u062a\u062d\u0645\u0644 \u062e\u0637\u0627 \u0628\u0631\u0627\u06cc \u06a9\u0627\u0631\u0647\u0627\u06cc\u06cc \u0627\u0633\u062a \u06a9\u0647 \u062a\u06a9\u0645\u06cc\u0644 \u0646\u0634\u062f\u0647 \u0627\u0646\u062f. \u0639\u0644\u0627\u0648\u0647 \u0628\u0631 \u0627\u06cc\u0646\u060c \u0647\u06cc\u0686 \u0645\u062d\u062a\u0648\u0627\u06cc \u0645\u0631\u062a\u0628\u0637\u06cc \u062f\u0631 \u06a9\u062f \u0645\u0646\u0628\u0639 \u062f\u0631 \u0645\u0648\u0631\u062f \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0632\u0645\u0627\u0646\u200c\u0628\u0646\u062f\u06cc \u06a9\u0627\u0631 \u062f\u0648\u0631\u0647\u200c\u0627\u06cc \u0648\u062c\u0648\u062f \u0646\u062f\u0627\u0631\u062f.<\/p>\n<p>\u0627\u06a9\u0646\u0648\u0646\u060c \u06cc\u06a9 \u0631\u0648\u06cc\u06a9\u0631\u062f \u062c\u062f\u06cc\u062f \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0627\u0633\u062a\u060c \u06a9\u0647 \u062d\u0631\u06a9\u062a \u0627\u0632 \u067e\u0627\u06cc\u06cc\u0646 \u0628\u0647 \u0628\u0627\u0644\u0627 \u0627\u0633\u062a:<\/p>\n<p>\u0627\u0628\u062a\u062f\u0627\u060c \u0645\u0634\u062e\u0635 \u0634\u062f \u06a9\u0647 \u067e\u0633 \u0627\u0632 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u062c\u062f\u062f \u0648 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc\u060c &#8220;\u0646\u0648\u0639 \u0627\u062c\u0631\u0627&#8221; \u062f\u0631 \u0635\u0641\u062d\u0647 \u0648\u0628 &#8220;\u0627\u062c\u0631\u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u06cc\u0632\u06cc \u0634\u062f\u0647&#8221; \u0627\u0633\u062a\u060c \u062f\u0631 \u062d\u0627\u0644\u06cc \u06a9\u0647 &#8220;\u0646\u0648\u0639_\u0641\u0631\u0645\u0627\u0646&#8221; \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 &#8220;6&#8221; \u0627\u0633\u062a. \u0627\u06cc\u0646 \u0628\u062f\u0627\u0646 \u0645\u0639\u0646\u0627\u0633\u062a \u06a9\u0647 \u0628\u0627\u06cc\u062f \u0633\u0631\u0648\u06cc\u0633\u06cc \u0648\u062c\u0648\u062f \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u062f \u06a9\u0647 \u062f\u0633\u062a\u0648\u0631\u06cc \u0628\u0627 command_type = 6 \u062f\u0631 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0648\u0627\u0631\u062f \u06a9\u0646\u062f \u0648 \u0646\u0645\u0648\u0646\u0647 \u0647\u0627\u06cc \u0632\u0645\u0627\u0646 \u0628\u0646\u062f\u06cc \u06a9\u0627\u0631 \u0631\u0627 \u0627\u0632 <code>t_ds_schedules<\/code> \u062c\u062f\u0648\u0644<\/p>\n<p>\u0628\u0627 \u062a\u0648\u062c\u0647 \u0628\u0647 \u06a9\u062f \u0645\u0646\u0628\u0639\u060c \u0628\u0627 \u0631\u062f\u06cc\u0627\u0628\u06cc \u067e\u0631\u0648\u0698\u0647 dolphinscheduler-dao\u060c \u06a9\u0647 \u0634\u0627\u0645\u0644 \u062a\u0645\u0627\u0645 DAO \u0647\u0627\u06cc \u0639\u0645\u0644\u06cc\u0627\u062a \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0627\u0633\u062a\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u0645 <code>ScheduleMapper<\/code> \u06a9\u0644\u0627\u0633\u060c \u06a9\u0647 \u06a9\u0644\u0627\u0633 DAO \u0645\u0631\u0628\u0648\u0637 \u0628\u0647 <code>t_ds_schedules<\/code> \u062c\u062f\u0648\u0644 \u0633\u067e\u0633 \u0628\u0627 \u0631\u062f\u06cc\u0627\u0628\u06cc <code>t_ds_command<\/code>\u060c \u0645\u0627 \u067e\u06cc\u062f\u0627 \u06a9\u0631\u062f\u06cc\u0645 <code>createCommand<\/code> \u0631\u0648\u0634 \u062f\u0631 <code>CommandServiceImpl<\/code> \u06a9\u0644\u0627\u0633 \u0628\u0627 \u0627\u0631\u062c\u0627\u0639 \u0645\u062a\u0642\u0627\u0628\u0644 \u0627\u06cc\u0646 \u062f\u0648\u060c \u0628\u0627 <code>command_type<\/code> \u0628\u0627 6 \u0633\u0627\u0644\u06af\u06cc\u060c \u0645\u0627 \u0622\u0646 \u0631\u0627 \u067e\u06cc\u062f\u0627 \u06a9\u0631\u062f\u06cc\u0645 <code>executeInternal<\/code> \u0631\u0648\u0634 \u062f\u0631 <code>ProcessScheduleTask<\/code> \u06a9\u0644\u0627\u0633<\/p>\n<p>\u0627\u06cc\u0646 <code>executeInternal<\/code> \u0631\u0648\u0634 \u062f\u0631 <code>ProcessScheduleTask<\/code> \u06a9\u0644\u0627\u0633 \u0633\u0647 \u0634\u0631\u0637 \u0631\u0627 \u0628\u0631\u0622\u0648\u0631\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f: \u0648\u0638\u06cc\u0641\u0647 \u0632\u0645\u0627\u0646 \u0628\u0646\u062f\u06cc \u0631\u0627 \u0648\u0627\u06a9\u0634\u06cc \u0645\u06cc \u06a9\u0646\u062f\u060c \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u0641\u0631\u0645\u0627\u0646 \u0631\u0627 \u062f\u0631\u062c \u0645\u06cc \u06a9\u0646\u062f \u0648 \u0646\u0648\u0639 \u0622\u0646 6 \u0627\u0633\u062a.<\/p>\n<p>\u0628\u0627 \u0628\u0631\u0631\u0633\u06cc \u06a9\u062f \u0645\u0646\u0628\u0639 \u0627\u0632 <code>executeInternal<\/code>\u060c \u0642\u0633\u0645\u062a \u0627\u0648\u0644 \u0632\u0645\u0627\u0646 \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u06cc\u0632\u06cc \u0634\u062f\u0647 \u0648 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627\u06cc \u0648\u0627\u0642\u0639\u06cc \u0631\u0627 \u0627\u0632 \u0632\u0645\u06cc\u0646\u0647 \u06a9\u0648\u0627\u0631\u062a\u0632 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0645\u06cc \u06a9\u0646\u062f. \u0628\u062e\u0634 \u062f\u0648\u0645 \u062a\u0623\u06cc\u06cc\u062f \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0622\u06cc\u0627 Cron \u0628\u0631\u0627\u06cc \u0627\u06cc\u0646 \u0632\u0645\u0627\u0646 \u0628\u0646\u062f\u06cc \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f \u0648 \u0622\u0646\u0644\u0627\u06cc\u0646 \u0627\u0633\u062a \u06cc\u0627 \u062e\u06cc\u0631.<\/p>\n<p>\u062f\u0631 <code>executeInternal<\/code>\u060c \u0639\u0646\u0627\u0635\u0631 \u06a9\u0644\u06cc\u062f\u06cc \u062f\u0631 \u0648\u0627\u0642\u0639 \u0647\u0633\u062a\u0646\u062f <code>scheduledFireTime<\/code> \u0648 <code>fireTime<\/code>.<\/p>\n<p>\u0628\u0627 \u0627\u06cc\u0646 \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u0645 \u0627\u0635\u0648\u0644 \u0632\u0645\u0627\u0646\u200c\u0628\u0646\u062f\u06cc \u0631\u0627 \u062e\u0644\u0627\u0635\u0647 \u06a9\u0646\u06cc\u0645 <strong>Dolphin Scheduler + Quartz<\/strong>:<\/p>\n<ul>\n<li>\u0635\u0641\u062d\u0647 \u0648\u0628 \u0628\u0631\u0646\u0627\u0645\u0647 \u0632\u0645\u0627\u0646\u06cc \u0631\u0627 \u062a\u0646\u0638\u06cc\u0645 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0627\u0632 \u0637\u0631\u06cc\u0642 \u0622\u0646 \u0627\u0646\u062c\u0627\u0645 \u0645\u06cc \u0634\u0648\u062f <code>SchedulerController.createSchedule()<\/code> \u0628\u0631\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f \u0628\u0631\u0646\u0627\u0645\u0647 \u0648 \u062f\u0631\u062c \u06cc\u06a9 \u0631\u06a9\u0648\u0631\u062f \u062f\u0631 <code>t_ds_schedules<\/code>.<\/li>\n<li>\u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u0628\u0631\u0646\u0627\u0645\u0647 \u0622\u0646\u0644\u0627\u06cc\u0646 \u0627\u0633\u062a\u060c \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u06a9\u0648\u0627\u0631\u062a\u0632 \u06cc\u06a9 \u0645\u0627\u0634\u0647 \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc \u06a9\u0646\u062f <code>QuartzScheduler.insertOrUpdateScheduleTask()<\/code> \u0648 \u06cc\u06a9 \u0631\u06a9\u0648\u0631\u062f \u0631\u0627 \u0648\u0627\u0631\u062f \u0645\u06cc \u06a9\u0646\u062f <code>QRTZ_CRON_TRIGGERS<\/code> \u062c\u062f\u0648\u0644<\/li>\n<li>\u0628\u0647 \u0635\u0648\u0631\u062a \u062f\u0648\u0631\u0647 \u0627\u06cc\u060c <code>ProcessScheduleTask.executeInternal()<\/code> \u0628\u0631\u0627\u06cc \u062f\u0631\u062c \u062f\u0627\u062f\u0647 \u062f\u0631 \u0622\u0646 \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u0645\u06cc \u0634\u0648\u062f <code>t_ds_command<\/code>.<\/li>\n<li>\u0633\u067e\u0633\u060c \u0628\u0627 \u062c\u0631\u06cc\u0627\u0646 \u0627\u062c\u0631\u0627\u06cc Master-Worker \u067e\u06cc\u0634 \u0645\u06cc \u0631\u0648\u062f.<\/li>\n<\/ul>\n<p>\u067e\u0633 \u0627\u0632 \u062f\u0631\u06a9 \u062c\u0631\u06cc\u0627\u0646 \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u06cc\u0632\u06cc \u06a9\u0644\u06cc\u060c \u0647\u0645\u0631\u0627\u0647 \u0628\u0627 <code>scheduledFireTime<\/code> \u0648 <code>fireTime<\/code>\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u0645 \u0627\u0633\u062a\u0646\u0628\u0627\u0637 \u06a9\u0646\u06cc\u0645 \u06a9\u0647 \u0632\u0645\u0627\u0646 \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u06cc\u0632\u06cc \u062a\u0648\u0633\u0637 DolphinScheduler \u062a\u0646\u0638\u06cc\u0645 \u0646\u0645\u06cc \u0634\u0648\u062f\u060c \u0628\u0644\u06a9\u0647 \u062a\u0648\u0633\u0637 Quartz \u062a\u0646\u0638\u06cc\u0645 \u0645\u06cc \u0634\u0648\u062f.<\/p>\n<p>\u062f\u0631 \u0645\u0631\u062d\u0644\u0647 \u0628\u0639\u062f\u060c \u0645\u0648\u0627\u062f \u0645\u0631\u062a\u0628\u0637 \u0628\u0627 \u06a9\u0648\u0627\u0631\u062a\u0632 \u0631\u0627 \u0628\u0631\u0631\u0633\u06cc \u0645\u06cc \u06a9\u0646\u06cc\u0645 \u0648 \u0645\u062a\u0648\u062c\u0647 \u0645\u06cc \u0634\u0648\u06cc\u0645 \u06a9\u0647 \u06a9\u0648\u0627\u0631\u062a\u0632 \u062f\u0627\u0631\u0627\u06cc \u06cc\u06a9 \u0627\u0633\u062a <strong>\u0634\u0644\u06cc\u06a9 \u0627\u0634\u062a\u0628\u0627\u0647<\/strong> \u0645\u06a9\u0627\u0646\u06cc\u0633\u0645: \u06cc\u06a9 \u06a9\u0627\u0631 \u062f\u0648\u0631\u0647 \u0627\u06cc <strong>\u0627\u0644\u0641<\/strong> \u0628\u0627\u06cc\u062f \u062f\u0631 \u0632\u0645\u0627\u0646 \u0645\u0634\u062e\u0635\u06cc \u0627\u062c\u0631\u0627 \u0634\u0648\u062f\u060c \u0627\u0645\u0627 \u0628\u0646\u0627 \u0628\u0647 \u062f\u0644\u0627\u06cc\u0644\u06cc\u060c \u0648\u0638\u06cc\u0641\u0647 <strong>\u0627\u0644\u0641<\/strong> \u0627\u062c\u0631\u0627 \u0646\u0634\u062f \u06a9\u0647 \u0646\u0627\u0645\u06cc\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f <strong>MisFire<\/strong>.<\/p>\n<p>Quartz \u06cc\u06a9 \u0622\u06cc\u062a\u0645 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0628\u0631\u0627\u06cc \u062a\u0639\u06cc\u06cc\u0646 \u0627\u06cc\u0646\u06a9\u0647 \u0622\u06cc\u0627 \u06cc\u06a9 \u06a9\u0627\u0631 MisFire \u0627\u0633\u062a \u06cc\u0627 \u062e\u06cc\u0631 \u062f\u0627\u0631\u062f: <code>org.quartz.jobStore.misfireThreshold<\/code>\u060c \u06a9\u0647 \u0628\u0647 \u0637\u0648\u0631 \u067e\u06cc\u0634 \u0641\u0631\u0636 60000 \u0645\u06cc\u0644\u06cc \u062b\u0627\u0646\u06cc\u0647 (\u06cc\u0639\u0646\u06cc 60 \u062b\u0627\u0646\u06cc\u0647) \u0627\u0633\u062a.<\/p>\n<p>\u062f\u0648 \u0634\u0631\u0637 \u0628\u0631\u0627\u06cc \u0648\u0642\u0648\u0639 Misfire \u0644\u0627\u0632\u0645 \u0627\u0633\u062a:<\/p>\n<ol>\n<li>\u0648\u0642\u062a\u06cc \u0628\u0647 \u0632\u0645\u0627\u0646 \u0645\u0627\u0634\u0647 \u0631\u0633\u06cc\u062f\u060c \u06a9\u0627\u0631 \u0627\u062c\u0631\u0627 \u0646\u0634\u062f.<\/li>\n<li>\u062a\u0627\u062e\u06cc\u0631 \u062f\u0631 \u0627\u062c\u0631\u0627\u06cc \u06a9\u0627\u0631 \u0628\u06cc\u0634 \u0627\u0632 <code>misfireThreshold<\/code> \u062f\u0631 \u06a9\u0648\u0627\u0631\u062a\u0632 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0634\u062f\u0647 \u0627\u0633\u062a.<\/li>\n<\/ol>\n<p>\u0627\u06af\u0631 \u062a\u0627\u062e\u06cc\u0631 \u062f\u0631 \u0627\u062c\u0631\u0627\u06cc \u06a9\u0627\u0631 \u06a9\u0645\u062a\u0631 \u0627\u0632 \u0622\u0633\u062a\u0627\u0646\u0647 \u0628\u0627\u0634\u062f\u060c \u06a9\u0648\u0627\u0631\u062a\u0632 \u0622\u0646 \u0631\u0627 Misfire \u0646\u0645\u06cc \u062f\u0627\u0646\u062f \u0648 \u0628\u0644\u0627\u0641\u0627\u0635\u0644\u0647 \u06a9\u0627\u0631 \u0631\u0627 \u0627\u062c\u0631\u0627 \u0645\u06cc \u06a9\u0646\u062f. \u0627\u06af\u0631 \u062a\u0627\u062e\u06cc\u0631 \u0628\u06cc\u0634\u062a\u0631 \u06cc\u0627 \u0645\u0633\u0627\u0648\u06cc \u0622\u0633\u062a\u0627\u0646\u0647 \u0628\u0627\u0634\u062f\u060c Misfire \u062f\u0631 \u0646\u0638\u0631 \u06af\u0631\u0641\u062a\u0647 \u0645\u06cc \u0634\u0648\u062f \u0648 \u06a9\u0648\u0627\u0631\u062a\u0632 \u0622\u0646 \u0631\u0627 \u0637\u0628\u0642 \u0627\u0633\u062a\u0631\u0627\u062a\u0698\u06cc \u0645\u0634\u062e\u0635 \u0634\u062f\u0647 \u0627\u062c\u0631\u0627 \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<p>\u062f\u0644\u0627\u06cc\u0644 \u0631\u0627\u06cc\u062c Misfire \u0639\u0628\u0627\u0631\u062a\u0646\u062f \u0627\u0632:<\/p>\n<ul>\n<li>\u0648\u0642\u062a\u06cc \u06a9\u0627\u0631 \u0628\u0647 \u0632\u0645\u0627\u0646 \u0645\u0627\u0634\u0647 \u0645\u06cc \u0631\u0633\u062f\u060c \u0647\u0645\u0647 \u0631\u0634\u062a\u0647 \u0647\u0627 \u062a\u0648\u0633\u0637 \u0645\u0634\u0627\u063a\u0644 \u062f\u06cc\u06af\u0631 \u0627\u0634\u063a\u0627\u0644 \u0645\u06cc \u0634\u0648\u0646\u062f \u0648 \u0647\u06cc\u0686 \u0631\u0634\u062a\u0647 \u0627\u06cc \u0645\u0648\u062c\u0648\u062f \u0646\u06cc\u0633\u062a.<\/li>\n<li>\u0632\u0645\u0627\u0646\u0628\u0646\u062f\u06cc (\u0627\u062d\u062a\u0645\u0627\u0644\u0627\u064b \u0628\u0647 \u0637\u0648\u0631 \u063a\u06cc\u0631\u0645\u0646\u062a\u0638\u0631\u0647) \u062f\u0631 \u0632\u0645\u0627\u0646 \u0634\u0631\u0648\u0639 \u0645\u062a\u0648\u0642\u0641 \u0634\u062f. [\u2014 This is the type of problem here.]<\/li>\n<li>\u06a9\u0627\u0631 \u0628\u0627 \u062d\u0627\u0634\u06cc\u0647 \u0646\u0648\u06cc\u0633\u06cc \u0634\u062f\u0647 \u0627\u0633\u062a <code>@DisallowConcurrentExecution<\/code>\u060c \u06cc\u0639\u0646\u06cc \u0646\u0645\u06cc \u062a\u0648\u0627\u0646 \u0622\u0646 \u0631\u0627 \u0647\u0645\u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u06a9\u0631\u062f \u0648 \u0632\u0645\u0627\u0646\u06cc \u06a9\u0647 \u0646\u0642\u0637\u0647 \u0627\u062c\u0631\u0627\u06cc \u0628\u0639\u062f\u06cc \u0645\u06cc \u0622\u06cc\u062f\u060c \u06a9\u0627\u0631 \u0642\u0628\u0644\u06cc \u062a\u06a9\u0645\u06cc\u0644 \u0646\u0634\u062f\u0647 \u0627\u0633\u062a.<\/li>\n<li>\u06a9\u0627\u0631 \u0632\u0645\u0627\u0646 \u0634\u0631\u0648\u0639 \u06af\u0630\u0634\u062a\u0647 \u0631\u0627 \u0645\u0634\u062e\u0635 \u06a9\u0631\u062f\u0647 \u0627\u0633\u062a. \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u0627\u06af\u0631 \u0632\u0645\u0627\u0646 \u0641\u0639\u0644\u06cc 8:00 \u0635\u0628\u062d \u0627\u0633\u062a\u060c \u0648 \u0632\u0645\u0627\u0646 \u0634\u0631\u0648\u0639 \u0631\u0648\u06cc 7:00:00 \u0635\u0628\u062d \u062a\u0646\u0638\u06cc\u0645 \u0634\u062f\u0647 \u0627\u0633\u062a.<\/li>\n<\/ul>\n<p>\u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u06a9\u0648\u0627\u0631\u062a\u0632 \u062a\u0634\u062e\u06cc\u0635 \u062f\u0627\u062f \u06a9\u0647 \u06cc\u06a9 \u06a9\u0627\u0631 \u06cc\u06a9 \u0627\u0634\u062a\u0628\u0627\u0647 \u0627\u0633\u062a\u060c \u06cc\u06a9 \u0645\u06a9\u0627\u0646\u06cc\u0633\u0645 \u062c\u0628\u0631\u0627\u0646 \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u06cc \u06a9\u0646\u062f\u060c \u0627\u0645\u0627 \u0645\u06a9\u0627\u0646\u06cc\u0633\u0645 \u062c\u0628\u0631\u0627\u0646 \u062a\u0646\u0647\u0627 \u067e\u0633 \u0627\u0632 \u062a\u0627\u06cc\u06cc\u062f \u06a9\u0627\u0631 \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 Misfire \u0627\u062c\u0631\u0627 \u0645\u06cc \u0634\u0648\u062f. \u0645\u06a9\u0627\u0646\u06cc\u0633\u0645 \u062c\u0628\u0631\u0627\u0646 \u062f\u0631 \u06a9\u0648\u0627\u0631\u062a\u0632 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0634\u062f\u0647 \u0627\u0633\u062a <code>Trigger<\/code> \u06a9\u062f \u0645\u0646\u0628\u0639:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>public interface Trigger extends Serializable, Cloneable, Comparable<trigger> {\n    long serialVersionUID = -3904243490805975570L;\n    int MISFIRE_INSTRUCTION_SMART_POLICY = 0;\n    int MISFIRE_INSTRUCTION_IGNORE_MISFIRE_POLICY = -1;\n    int DEFAULT_PRIORITY = 5;\n    ......\n<\/trigger><\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0627\u0645\u0627 \u0627\u06cc\u0646 \u0645\u06a9\u0627\u0646\u06cc\u0633\u0645 \u062c\u0628\u0631\u0627\u0646 \u0628\u0627\u06cc\u062f \u0628\u0631 \u0627\u0633\u0627\u0633 Trigger \u062a\u0639\u06cc\u06cc\u0646 \u0634\u0648\u062f. \u062f\u0631 \u0632\u06cc\u0631 \u0627\u0646\u0648\u0627\u0639 \u0645\u062e\u062a\u0644\u0641\u06cc \u0627\u0632 \u0645\u062d\u0631\u06a9 \u0647\u0627 \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/media2.dev.to\/dynamic\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffpe61k8mcknbawrna93u.png\" alt=\"\u062a\u0648\u0636\u06cc\u062d\u0627\u062a \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"800\" height=\"425\" title=\"\"><\/p>\n<p>\u062f\u0631 DolphinScheduler\u060c \u0627\u0646\u0648\u0627\u0639 \u0645\u062e\u062a\u0644\u0641\u06cc \u0627\u0632 \u0645\u062d\u0631\u06a9 \u0647\u0627 \u0634\u0627\u0645\u0644 \u0645\u0648\u0627\u0631\u062f \u0632\u06cc\u0631 \u0627\u0633\u062a:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/media2.dev.to\/dynamic\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3ohjcg5zbf6srwplcyrh.png\" alt=\"\u062a\u0648\u0636\u06cc\u062d\u0627\u062a \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"366\" height=\"305\" title=\"\"><\/p>\n<p>\u0627\u0646\u0648\u0627\u0639 \u0645\u0627\u0634\u0647:<\/p>\n<ul>\n<li>\n<p><strong>SimpleTrigger<\/strong> \u06cc\u06a9 \u0645\u0627\u0634\u0647 \u0633\u0627\u062f\u0647 \u0627\u0633\u062a \u06a9\u0647 \u0628\u0631\u0627\u06cc \u0627\u062c\u0631\u0627\u06cc \u06a9\u0627\u0631\u0647\u0627\u06cc \u062a\u06a9\u0631\u0627\u0631\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f. \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u062f \u0632\u0645\u0627\u0646 \u0634\u0631\u0648\u0639 \u0631\u0627 \u0645\u0634\u062e\u0635 \u06a9\u0646\u062f \u0648 \u0633\u067e\u0633 \u06a9\u0627\u0631 \u0631\u0627 \u062f\u0631 \u0641\u0648\u0627\u0635\u0644 \u0632\u0645\u0627\u0646\u06cc \u062b\u0627\u0628\u062a \u062a\u06a9\u0631\u0627\u0631 \u06a9\u0646\u062f \u062a\u0627 \u0628\u0647 \u062a\u0639\u062f\u0627\u062f \u062a\u06a9\u0631\u0627\u0631 \u0645\u0634\u062e\u0635\u200c\u0634\u062f\u0647 \u0628\u0631\u0633\u062f. \u0648\u06cc\u0698\u06af\u06cc \u0647\u0627\u06cc SimpleTrigger \u0634\u0627\u0645\u0644 \u0628\u0627\u0632\u0647 \u062a\u06a9\u0631\u0627\u0631 (<code>repeatInterval<\/code>) \u0648 \u062a\u06a9\u0631\u0627\u0631 \u0634\u0645\u0627\u0631\u0634 (<code>repeatCount<\/code>) \u0628\u0627 \u062a\u0639\u062f\u0627\u062f \u0648\u0627\u0642\u0639\u06cc \u0627\u0639\u062f\u0627\u0645 \u0647\u0627 <code>repeatCount + 1<\/code>\u060c \u0632\u06cc\u0631\u0627 \u06a9\u0627\u0631 \u06cc\u06a9 \u0628\u0627\u0631 \u062f\u0631 \u0632\u0645\u0627\u0646 \u0634\u0631\u0648\u0639 \u0627\u062c\u0631\u0627 \u0645\u06cc \u0634\u0648\u062f (<code>startTime<\/code>).<\/p>\n<\/li>\n<li>\n<p><strong>CronTrigger<\/strong>: CronTrigger \u0627\u0632 \u0639\u0628\u0627\u0631\u062a Cron \u0628\u0631\u0627\u06cc \u062a\u0639\u0631\u06cc\u0641 \u06cc\u06a9 \u0628\u0631\u0646\u0627\u0645\u0647 \u0632\u0645\u0627\u0646 \u0628\u0646\u062f\u06cc \u067e\u06cc\u0686\u06cc\u062f\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f. \u06cc\u06a9 \u0639\u0628\u0627\u0631\u062a Cron \u0627\u0632 6 \u06cc\u0627 7 \u0641\u06cc\u0644\u062f \u0632\u0645\u0627\u0646\u06cc \u062c\u062f\u0627 \u0634\u062f\u0647 \u0628\u0627 \u0641\u0636\u0627 \u062a\u0634\u06a9\u06cc\u0644 \u0634\u062f\u0647 \u0627\u0633\u062a \u06a9\u0647 \u0646\u0634\u0627\u0646 \u062f\u0647\u0646\u062f\u0647 \u062b\u0627\u0646\u06cc\u0647\u060c \u062f\u0642\u06cc\u0642\u0647\u060c \u0633\u0627\u0639\u062a\u060c \u0631\u0648\u0632 \u0645\u0627\u0647\u060c \u0645\u0627\u0647\u060c \u0631\u0648\u0632 \u0647\u0641\u062a\u0647 \u0648 \u06cc\u06a9 \u0633\u0627\u0644 \u0627\u062e\u062a\u06cc\u0627\u0631\u06cc \u0627\u0633\u062a. CronTrigger \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc \u062f\u0647\u062f \u062a\u0627 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0628\u0633\u06cc\u0627\u0631 \u067e\u06cc\u0686\u06cc\u062f\u0647 \u0627\u06cc \u0631\u0627 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f\u060c \u06a9\u0647 \u0627\u06a9\u062b\u0631 \u0642\u0627\u0628\u0644\u06cc\u062a \u0647\u0627\u06cc \u0633\u0627\u06cc\u0631 \u0645\u062d\u0631\u06a9 \u0647\u0627 \u0631\u0627 \u067e\u0648\u0634\u0634 \u0645\u06cc \u062f\u0647\u062f.<\/p>\n<\/li>\n<li>\n<p><strong>CalendarIntervalTrigger<\/strong>: CalendarIntervalTrigger \u0648\u0638\u0627\u06cc\u0641\u06cc \u0631\u0627 \u0645\u0634\u062e\u0635 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0628\u0627\u06cc\u062f \u062f\u0631 \u0628\u0627\u0632\u0647 \u0647\u0627\u06cc \u0632\u0645\u0627\u0646\u06cc \u0645\u0639\u06cc\u0646\u06cc \u0627\u0632 \u0632\u0645\u0627\u0646 \u062e\u0627\u0635\u06cc \u0634\u0631\u0648\u0639 \u0634\u0648\u0646\u062f. \u0628\u0631\u062e\u0644\u0627\u0641 SimpleTrigger \u06a9\u0647 \u0641\u0642\u0637 \u0641\u0648\u0627\u0635\u0644 \u0632\u0645\u0627\u0646\u06cc \u0645\u06cc\u0644\u06cc\u200c\u062b\u0627\u0646\u06cc\u0647\u200c\u0627\u06cc \u0631\u0627 \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0645\u06cc\u200c\u06a9\u0646\u062f\u060c CalendarIntervalTrigger \u0627\u0632 \u0648\u0627\u062d\u062f\u0647\u0627\u06cc \u0628\u0627\u0632\u0647\u200c\u0627\u06cc \u0645\u0627\u0646\u0646\u062f \u062b\u0627\u0646\u06cc\u0647\u060c \u062f\u0642\u06cc\u0642\u0647\u060c \u0633\u0627\u0639\u062a\u060c \u0631\u0648\u0632\u060c \u0645\u0627\u0647 \u0648 \u0633\u0627\u0644 \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0645\u06cc\u200c\u06a9\u0646\u062f. \u0628\u0631\u0627\u06cc \u06a9\u0627\u0631\u0647\u0627\u06cc\u06cc \u0645\u0627\u0646\u0646\u062f \u0627\u062c\u0631\u0627\u06cc \u06cc\u06a9 \u0628\u0627\u0631 \u062f\u0631 \u0647\u0641\u062a\u0647 \u0645\u0646\u0627\u0633\u0628 \u0627\u0633\u062a.<\/p>\n<\/li>\n<li>\n<p><strong>DailyTimeIntervalTrigger<\/strong>: DailyTimeIntervalTrigger \u0648\u0638\u0627\u06cc\u0641\u06cc \u0631\u0627 \u0645\u0634\u062e\u0635 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u062f\u0631 \u0641\u0648\u0627\u0635\u0644 \u0632\u0645\u0627\u0646\u06cc \u0645\u0639\u06cc\u0646\u06cc \u062f\u0631 \u06cc\u06a9 \u0632\u0645\u0627\u0646 \u062e\u0627\u0635 \u0647\u0631 \u0631\u0648\u0632 \u0627\u062c\u0631\u0627 \u0634\u0648\u0646\u062f. \u0647\u0645\u0686\u0646\u06cc\u0646 \u0627\u0632 \u062a\u0639\u06cc\u06cc\u0646 \u0631\u0648\u0632\u0647\u0627\u06cc \u0647\u0641\u062a\u0647 \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0645\u06cc \u06a9\u0646\u062f. \u0628\u0631\u0627\u06cc \u06a9\u0627\u0631\u0647\u0627\u06cc\u06cc \u0645\u0627\u0646\u0646\u062f \u0627\u062c\u0631\u0627\u06cc \u0647\u0631 70 \u062b\u0627\u0646\u06cc\u0647 \u0628\u06cc\u0646 \u0633\u0627\u0639\u062a 9:00 \u062a\u0627 18:00 \u0648 \u0641\u0642\u0637 \u062f\u0631 \u0631\u0648\u0632\u0647\u0627\u06cc \u0647\u0641\u062a\u0647 \u0645\u0646\u0627\u0633\u0628 \u0627\u0633\u062a.<\/p>\n<\/li>\n<\/ul>\n<p>\u0628\u0646\u0627\u0628\u0631\u0627\u06cc\u0646\u060c \u0627\u0632 \u0622\u0646\u062c\u0627\u06cc\u06cc \u06a9\u0647 \u0627\u0646\u0648\u0627\u0639 \u0645\u062e\u062a\u0644\u0641 Trigger \u0647\u0627 \u067e\u0627\u0631\u0627\u0645\u062a\u0631\u0647\u0627\u06cc \u0645\u062a\u0641\u0627\u0648\u062a\u06cc \u062f\u0627\u0631\u0646\u062f\u060c \u0632\u0645\u0627\u0646\u06cc \u06a9\u0647 Trigger \u0645\u06a9\u0627\u0646\u06cc\u0633\u0645 Misfire \u0631\u0627 \u0641\u0639\u0627\u0644 \u0645\u06cc \u06a9\u0646\u062f\u060c \u0627\u0633\u062a\u0631\u0627\u062a\u0698\u06cc \u0646\u06cc\u0632 \u0628\u0631 \u0627\u0633\u0627\u0633 Trigger \u0645\u062a\u0641\u0627\u0648\u062a \u062e\u0648\u0627\u0647\u062f \u0628\u0648\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight java\"><code><span class=\"cm\">\/**\n * Common Misfire mechanism in the Trigger class\n **\/<\/span>\n <span class=\"c1\">\/\/ This is an intelligent strategy, and Quartz will automatically select an appropriate misfire strategy based on the type of Trigger. For CronTrigger, the default is MISFIRE_INSTRUCTION_FIRE_ONCE_NOW.<\/span>\n<span class=\"kt\">int<\/span> <span class=\"no\">MISFIRE_INSTRUCTION_SMART_POLICY<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">0<\/span><span class=\"o\">;<\/span>\n<span class=\"c1\">\/\/ This strategy immediately executes all missed trigger events and compensates for all missed actions. Even if the scheduled task's time has ended, it will execute all the tasks that should have been executed all at once.<\/span>\n<span class=\"kt\">int<\/span> <span class=\"no\">MISFIRE_INSTRUCTION_IGNORE_MISFIRE_POLICY<\/span> <span class=\"o\">=<\/span> <span class=\"o\">-<\/span><span class=\"mi\">1<\/span><span class=\"o\">;<\/span>\n<span class=\"cm\">\/**\n * Misfire mechanism for SimpleTrigger, in the SimpleTrigger class\n **\/<\/span>\n <span class=\"c1\">\/\/ If the trigger misses the scheduled time, this strategy will immediately execute one task and then continue executing subsequent tasks according to the original plan.<\/span>\n<span class=\"kt\">int<\/span> <span class=\"no\">MISFIRE_INSTRUCTION_FIRE_NOW<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">1<\/span><span class=\"o\">;<\/span>\n<span class=\"c1\">\/\/ This strategy will set the start time of the trigger to the current time and immediately execute the missed task, including any missed repeat counts.<\/span>\n<span class=\"kt\">int<\/span> <span class=\"no\">MISFIRE_INSTRUCTION_RESCHEDULE_NOW_WITH_EXISTING_REPEAT_COUNT<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">2<\/span><span class=\"o\">;<\/span>\n<span class=\"c1\">\/\/ Similar to MISFIRE_INSTRUCTION_RESCHEDULE_NOW_WITH_EXISTING_REPEAT_COUNT, but it will ignore the missed trigger counts and only execute the remaining repeat counts.<\/span>\n<span class=\"kt\">int<\/span> <span class=\"no\">MISFIRE_INSTRUCTION_RESCHEDULE_NOW_WITH_REMAINING_REPEAT_COUNT<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">3<\/span><span class=\"o\">;<\/span>\n<span class=\"c1\">\/\/ This strategy will ignore the missed trigger counts and execute the task at the next scheduled time, executing the remaining repeat counts.<\/span>\n<span class=\"kt\">int<\/span> <span class=\"no\">MISFIRE_INSTRUCTION_RESCHEDULE_NEXT_WITH_REMAINING_COUNT<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">4<\/span><span class=\"o\">;<\/span>\n<span class=\"c1\">\/\/ Similar to MISFIRE_INSTRUCTION_RESCHEDULE_NEXT_WITH_REMAINING_COUNT, but it will include all the missed repeat counts.<\/span>\n<span class=\"kt\">int<\/span> <span class=\"no\">MISFIRE_INSTRUCTION_RESCHEDULE_NEXT_WITH_EXISTING_COUNT<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">5<\/span><span class=\"o\">;<\/span>\n<span class=\"cm\">\/** \n * Misfire mechanism for CronTrigger, in the CronTrigger class\n **\/<\/span>\n <span class=\"c1\">\/\/ If the trigger misses the scheduled time, this strategy will immediately execute one task and then continue executing subsequent tasks according to the original plan.<\/span>\n<span class=\"kt\">int<\/span> <span class=\"no\">MISFIRE_INSTRUCTION_FIRE_ONCE_NOW<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">1<\/span><span class=\"o\">;<\/span>\n<span class=\"c1\">\/\/ For CronTrigger, this strategy will ignore all missed trigger events and wait directly for the next scheduled trigger time.<\/span>\n<span class=\"kt\">int<\/span> <span class=\"no\">MISFIRE_INSTRUCTION_DO_NOTHING<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">2<\/span><span class=\"o\">;<\/span>\n<span class=\"o\">......<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u062f\u0631 <code>QuartzScheduler.insertOrUpdateScheduleTask()<\/code>\u060c \u0641\u0642\u0637 <code>CronTrigger<\/code> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f \u0648 \u06a9\u062f \u0645\u0646\u0628\u0639 \u0628\u0647 \u0634\u0631\u062d \u0632\u06cc\u0631 \u0627\u0633\u062a:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight java\"><code><span class=\"nc\">CronTrigger<\/span> <span class=\"n\">cronTrigger<\/span> <span class=\"o\">=<\/span> <span class=\"n\">newTrigger<\/span><span class=\"o\">()<\/span>\n        <span class=\"o\">.<\/span><span class=\"na\">withIdentity<\/span><span class=\"o\">(<\/span><span class=\"n\">triggerKey<\/span><span class=\"o\">)<\/span>\n        <span class=\"o\">.<\/span><span class=\"na\">startAt<\/span><span class=\"o\">(<\/span><span class=\"n\">startDate<\/span><span class=\"o\">)<\/span>\n        <span class=\"o\">.<\/span><span class=\"na\">endAt<\/span><span class=\"o\">(<\/span><span class=\"n\">endDate<\/span><span class=\"o\">)<\/span>\n        <span class=\"o\">.<\/span><span class=\"na\">withSchedule<\/span><span class=\"o\">(<\/span>\n                <span class=\"n\">cronSchedule<\/span><span class=\"o\">(<\/span><span class=\"n\">cronExpression<\/span><span class=\"o\">)<\/span>\n                        <span class=\"o\">.<\/span><span class=\"na\">withMisfireHandlingInstructionIgnoreMisfires<\/span><span class=\"o\">()<\/span>\n                        <span class=\"o\">.<\/span><span class=\"na\">inTimeZone<\/span><span class=\"o\">(<\/span><span class=\"nc\">DateUtils<\/span><span class=\"o\">.<\/span><span class=\"na\">getTimezone<\/span><span class=\"o\">(<\/span><span class=\"n\">timezoneId<\/span><span class=\"o\">)))<\/span>\n        <span class=\"o\">.<\/span><span class=\"na\">forJob<\/span><span class=\"o\">(<\/span><span class=\"n\">jobDetail<\/span><span class=\"o\">).<\/span><span class=\"na\">build<\/span><span class=\"o\">();<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u067e\u0627\u06cc\u06cc\u0646 \u062a\u0631:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight java\"><code><span class=\"kd\">public<\/span> <span class=\"nc\">CronScheduleBuilder<\/span> <span class=\"nf\">withMisfireHandlingInstructionIgnoreMisfires<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n    <span class=\"k\">this<\/span><span class=\"o\">.<\/span><span class=\"na\">misfireInstruction<\/span> <span class=\"o\">=<\/span> <span class=\"o\">-<\/span><span class=\"mi\">1<\/span><span class=\"o\">;<\/span>\n    <span class=\"k\">return<\/span> <span class=\"k\">this<\/span><span class=\"o\">;<\/span>\n<span class=\"o\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0645\u06a9\u0627\u0646\u06cc\u0633\u0645 \u062c\u0628\u0631\u0627\u0646 \u0622\u0646 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 <code>-1<\/code> \u0631\u0645\u0632\u06af\u0630\u0627\u0631\u06cc\u060c \u0628\u0647 \u0627\u06cc\u0646 \u0645\u0639\u0646\u06cc \u06a9\u0647 \u062a\u0645\u0627\u0645 \u0631\u0648\u06cc\u062f\u0627\u062f\u0647\u0627\u06cc \u0645\u0627\u0634\u0647 \u0627\u0632 \u062f\u0633\u062a \u0631\u0641\u062a\u0647 \u0628\u0644\u0627\u0641\u0627\u0635\u0644\u0647 \u0627\u062c\u0631\u0627 \u0645\u06cc \u0634\u0648\u0646\u062f \u0648 \u062a\u0645\u0627\u0645 \u0627\u0642\u062f\u0627\u0645\u0627\u062a \u062c\u0628\u0631\u0627\u0646\u06cc \u0627\u0646\u062c\u0627\u0645 \u0645\u06cc \u0634\u0648\u062f. \u062e\u0628 \u062d\u0627\u0644\u0627 \u0645\u06cc \u062a\u0648\u0646\u06cc\u0645 \u062a\u0648\u0636\u06cc\u062d \u0628\u062f\u06cc\u0645 \u06a9\u0647 \u0686\u0631\u0627 \u0628\u0639\u062f \u0627\u0632 \u06cc\u06a9 \u0631\u06cc\u0633\u062a\u0627\u0631\u062a Master\u060c \u062a\u0645\u0627\u0645 \u06a9\u0627\u0631\u0647\u0627\u06cc \u062f\u0648\u0631\u0647 \u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u06cc\u0632\u06cc \u0646\u0634\u062f\u0647 \u06cc\u06a9\u0628\u0627\u0631 \u0627\u062c\u0631\u0627 \u0645\u06cc\u0634\u0646!!!<\/p>\n<p>\u0627\u06cc\u0646 \u062a\u0646\u0638\u06cc\u0645\u060c \u0628\u0633\u062a\u0647 \u0628\u0647 \u0645\u0627\u0634\u0647\u060c \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u062f \u067e\u0627\u0631\u0627\u0645\u062a\u0631\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641\u06cc \u0631\u0627 \u0646\u06cc\u0632 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight java\"><code><span class=\"cm\">\/**\n * For CronTrigger, refer to settings in CronScheduleBuilder\n **\/<\/span>\n<span class=\"kd\">public<\/span> <span class=\"nc\">CronScheduleBuilder<\/span> <span class=\"nf\">withMisfireHandlingInstructionIgnoreMisfires<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n    <span class=\"k\">this<\/span><span class=\"o\">.<\/span><span class=\"na\">misfireInstruction<\/span> <span class=\"o\">=<\/span> <span class=\"o\">-<\/span><span class=\"mi\">1<\/span><span class=\"o\">;<\/span>\n    <span class=\"k\">return<\/span> <span class=\"k\">this<\/span><span class=\"o\">;<\/span>\n<span class=\"o\">}<\/span>\n<span class=\"kd\">public<\/span> <span class=\"nc\">CronScheduleBuilder<\/span> <span class=\"nf\">withMisfireHandlingInstructionDoNothing<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n    <span class=\"k\">this<\/span><span class=\"o\">.<\/span><span class=\"na\">misfireInstruction<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">2<\/span><span class=\"o\">;<\/span>\n    <span class=\"k\">return<\/span> <span class=\"k\">this<\/span><span class=\"o\">;<\/span>\n<span class=\"o\">}<\/span>\n<span class=\"kd\">public<\/span> <span class=\"nc\">CronScheduleBuilder<\/span> <span class=\"nf\">withMisfireHandlingInstructionFireAndProceed<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n    <span class=\"k\">this<\/span><span class=\"o\">.<\/span><span class=\"na\">misfireInstruction<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">1<\/span><span class=\"o\">;<\/span>\n    <span class=\"k\">return<\/span> <span class=\"k\">this<\/span><span class=\"o\">;<\/span>\n<span class=\"o\">}<\/span>\n<span class=\"cm\">\/**\n * For SimpleTrigger, refer to settings in SimpleScheduleBuilder\n**\/<\/span>\n<span class=\"kd\">public<\/span> <span class=\"nc\">SimpleScheduleBuilder<\/span> <span class=\"nf\">withMisfireHandlingInstructionIgnoreMisfires<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n    <span class=\"k\">this<\/span><span class=\"o\">.<\/span><span class=\"na\">misfireInstruction<\/span> <span class=\"o\">=<\/span> <span class=\"o\">-<\/span><span class=\"mi\">1<\/span><span class=\"o\">;<\/span>\n    <span class=\"k\">return<\/span> <span class=\"k\">this<\/span><span class=\"o\">;<\/span>\n<span class=\"o\">}<\/span>\n<span class=\"kd\">public<\/span> <span class=\"nc\">SimpleScheduleBuilder<\/span> <span class=\"nf\">withMisfireHandlingInstructionFireNow<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n    <span class=\"k\">this<\/span><span class=\"o\">.<\/span><span class=\"na\">misfireInstruction<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">1<\/span><span class=\"o\">;<\/span>\n    <span class=\"k\">return<\/span> <span class=\"k\">this<\/span><span class=\"o\">;<\/span>\n<span class=\"o\">}<\/span>\n<span class=\"kd\">public<\/span> <span class=\"nc\">SimpleScheduleBuilder<\/span> <span class=\"nf\">withMisfireHandlingInstructionNextWithExistingCount<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n    <span class=\"k\">this<\/span><span class=\"o\">.<\/span><span class=\"na\">misfireInstruction<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">5<\/span><span class=\"o\">;<\/span>\n    <span class=\"k\">return<\/span> <span class=\"k\">this<\/span><span class=\"o\">;<\/span>\n<span class=\"o\">}<\/span>\n<span class=\"kd\">public<\/span> <span class=\"nc\">SimpleScheduleBuilder<\/span> <span class=\"nf\">withMisfireHandlingInstructionNextWithRemainingCount<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n    <span class=\"k\">this<\/span><span class=\"o\">.<\/span><span class=\"na\">misfireInstruction<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">4<\/span><span class=\"o\">;<\/span>\n    <span class=\"k\">return<\/span> <span class=\"k\">this<\/span><span class=\"o\">;<\/span>\n<span class=\"o\">}<\/span>\n<span class=\"kd\">public<\/span> <span class=\"nc\">SimpleScheduleBuilder<\/span> <span class=\"nf\">withMisfireHandlingInstructionNowWithExistingCount<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n    <span class=\"k\">this<\/span><span class=\"o\">.<\/span><span class=\"na\">misfireInstruction<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">2<\/span><span class=\"o\">;<\/span>\n    <span class=\"k\">return<\/span> <span class=\"k\">this<\/span><span class=\"o\">;<\/span>\n<span class=\"o\">}<\/span>\n<span class=\"kd\">public<\/span> <span class=\"nc\">SimpleScheduleBuilder<\/span> <span class=\"nf\">withMisfireHandlingInstructionNowWithRemainingCount<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n    <span class=\"k\">this<\/span><span class=\"o\">.<\/span><span class=\"na\">misfireInstruction<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">3<\/span><span class=\"o\">;<\/span>\n    <span class=\"k\">return<\/span> <span class=\"k\">this<\/span><span class=\"o\">;<\/span>\n<span class=\"o\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<h2><span class=\"ez-toc-section\" id=\"%D8%AA%D9%88%D8%B6%DB%8C%D8%AD_%D9%85%DA%A9%D8%A7%D9%86%DB%8C%D8%B3%D9%85_%D8%A2%D8%AA%D8%B4_%D8%B3%D9%88%D8%B2%DB%8C_%D8%AF%D8%B1_%DA%A9%D9%88%D8%A7%D8%B1%D8%AA%D8%B2\"><\/span>\n<p>  \u062a\u0648\u0636\u06cc\u062d \u0645\u06a9\u0627\u0646\u06cc\u0633\u0645 \u0622\u062a\u0634 \u0633\u0648\u0632\u06cc \u062f\u0631 \u06a9\u0648\u0627\u0631\u062a\u0632<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><strong>\u0648\u0638\u06cc\u0641\u0647 \u0631\u0627 \u0631\u0648\u06cc &#8220;Serial Wait&#8221; \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f<\/strong> &#8211; \u0627\u06cc\u0646 \u0627\u0645\u06a9\u0627\u0646 \u067e\u0630\u06cc\u0631 \u0627\u0633\u062a\u060c \u0627\u0645\u0627 \u0646\u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u0628\u0647 \u0637\u0648\u0631 \u06a9\u0627\u0645\u0644 \u0627\u0632 \u0645\u0632\u0627\u06cc\u0627\u06cc \u0645\u0648\u0627\u0632\u06cc \u0633\u0627\u0632\u06cc \u062e\u0648\u0634\u0647 \u0647\u0627\u06cc \u06a9\u0644\u0627\u0646 \u062f\u0627\u062f\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u062f. \u0647\u0645\u0686\u0646\u06cc\u0646 \u06cc\u06a9 \u0646\u0642\u0635 \u0645\u0647\u0644\u06a9 \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f: \u0648\u0638\u0627\u06cc\u0641 \u062a\u0646\u0638\u06cc\u0645 \u0634\u062f\u0647 \u0631\u0648\u06cc \u0627\u0646\u062a\u0638\u0627\u0631 \u0633\u0631\u06cc\u0627\u0644 \u0646\u0645\u06cc \u062a\u0648\u0627\u0646\u0646\u062f \u0628\u0647 \u0635\u0648\u0631\u062a \u062f\u0633\u062a\u06cc \u0627\u0632 \u0637\u0631\u06cc\u0642 \u0635\u0641\u062d\u0647 \u0645\u062a\u0648\u0642\u0641 \u0634\u0648\u0646\u062f\u060c \u0648 \u0648\u0636\u0639\u06cc\u062a \u0628\u0627\u06cc\u062f \u0627\u0635\u0644\u0627\u062d \u0634\u0648\u062f \u06cc\u0627 \u062f\u0627\u062f\u0647 \u0647\u0627 \u062f\u0631 \u0635\u0641\u062d\u0647 \u062d\u0630\u0641 \u0634\u0648\u0646\u062f. <code>t_ds_process_instance<\/code> \u062c\u062f\u0648\u0644<\/p>\n<p><strong>\u0627\u0633\u062a\u0627\u062f HA<\/strong>: \u0628\u0631\u0627\u06cc \u06cc\u06a9 \u0627\u0633\u062a\u0627\u062f\u060c \u06cc\u06a9 \u062f\u06cc\u0645\u0648\u0646 \u0628\u0631\u0627\u06cc Master \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f \u062a\u0627 \u0628\u0647 \u0637\u0648\u0631 \u062e\u0648\u062f\u06a9\u0627\u0631 \u067e\u0633 \u0627\u0632 \u062e\u0631\u0627\u0628\u06cc \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u062c\u062f\u062f \u0634\u0648\u062f (\u0627\u06af\u0631\u0686\u0647 \u06af\u0627\u0647\u06cc \u0627\u0648\u0642\u0627\u062a \u0646\u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u062c\u062f\u062f \u0634\u0648\u062f). \u0628\u0631\u0627\u06cc Multi-Master\u060c \u0686\u0646\u062f\u06cc\u0646 Master \u0631\u0627 \u0628\u0631\u0627\u06cc \u0641\u0639\u0627\u0644 \u06a9\u0631\u062f\u0646 HA \u0645\u0633\u062a\u0642\u0631 \u06a9\u0646\u06cc\u062f.<\/p>\n<p><strong>\u0647\u0634\u062f\u0627\u0631\u0647\u0627\u06cc \u0645\u0627\u0646\u06cc\u062a\u0648\u0631\u06cc\u0646\u06af DolphinScheduler<\/strong>: \u0648\u0636\u0639\u06cc\u062a \u0627\u062c\u0631\u0627\u06cc DolphinScheduler \u0631\u0627 \u0628\u0647 \u0637\u0648\u0631 \u0645\u062f\u0627\u0648\u0645 \u0646\u0638\u0627\u0631\u062a \u06a9\u0646\u06cc\u062f. \u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u06cc\u06a9 \u0646\u0642\u0634 \u0628\u0627 \u0634\u06a9\u0633\u062a \u0645\u0648\u0627\u062c\u0647 \u0645\u06cc \u0634\u0648\u062f\u060c \u06cc\u06a9 \u0647\u0634\u062f\u0627\u0631 \u0628\u0647 \u0645\u0648\u0642\u0639 \u0627\u0631\u0633\u0627\u0644 \u0645\u06cc \u0634\u0648\u062f (\u0645\u0645\u06a9\u0646 \u0627\u0633\u062a \u0645\u0648\u0627\u0631\u062f\u06cc \u0648\u062c\u0648\u062f \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u062f \u06a9\u0647 \u062f\u0631 \u0646\u06cc\u0645\u0647 \u0634\u0628 \u062e\u0631\u0627\u0628\u06cc \u0627\u062a\u0641\u0627\u0642 \u0628\u06cc\u0641\u062a\u062f \u0648 \u062a\u06cc\u0645 \u0639\u0645\u0644\u06cc\u0627\u062a \u0645\u062a\u0648\u062c\u0647 \u0647\u0634\u062f\u0627\u0631 \u0646\u0634\u0648\u062f).<\/p>\n<p><strong>CPU \u0648 \u0622\u0633\u062a\u0627\u0646\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u062d\u0627\u0641\u0638\u0647 \u0631\u0627 \u0628\u0631\u0627\u06cc DolphinScheduler \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f<\/strong>: \u062f\u0631 \u0641\u0627\u06cc\u0644 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc\u060c \u0622\u0633\u062a\u0627\u0646\u0647 \u067e\u06cc\u0634\u200c\u0641\u0631\u0636 CPU \u0648 \u062d\u0627\u0641\u0638\u0647 \u0631\u0648\u06cc 70% \u062a\u0646\u0638\u06cc\u0645 \u0634\u062f\u0647 \u0627\u0633\u062a\u060c \u0628\u0647 \u0627\u06cc\u0646 \u0645\u0639\u0646\u06cc \u06a9\u0647 \u0648\u0642\u062a\u06cc \u0645\u06cc\u0632\u0627\u0646 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 CPU \u0648 \u062d\u0627\u0641\u0638\u0647 \u0633\u0631\u0648\u0631 \u0628\u0647 70% \u0628\u0631\u0633\u062f\u060c DolphinScheduler \u062f\u06cc\u06af\u0631 \u06a9\u0627\u0631\u0647\u0627 \u0631\u0627 \u062f\u0631 \u0627\u06cc\u0646 \u0633\u0631\u0648\u0631 \u0628\u0631\u0646\u0627\u0645\u0647\u200c\u0631\u06cc\u0632\u06cc \u0646\u0645\u06cc\u200c\u06a9\u0646\u062f. \u0645\u0632\u06cc\u062a \u0627\u06cc\u0646 \u0631\u0648\u06cc\u06a9\u0631\u062f \u0627\u06cc\u0646 \u0627\u0633\u062a \u06a9\u0647 \u062a\u0636\u0645\u06cc\u0646 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0645\u0646\u0627\u0628\u0639 \u0633\u0631\u0648\u0631 \u0628\u0647 \u0637\u0648\u0631 \u06a9\u0627\u0645\u0644 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0646\u0645\u06cc \u0634\u0648\u062f. \u0646\u06a9\u062a\u0647 \u0645\u0646\u0641\u06cc \u0627\u06cc\u0646 \u0627\u0633\u062a \u06a9\u0647 \u0627\u06af\u0631 \u0648\u0638\u0627\u06cc\u0641 \u0642\u062f\u06cc\u0645\u06cc \u0645\u0633\u062a\u062d\u06a9\u0645 \u062f\u0631 \u0628\u0631\u0627\u0628\u0631 \u062e\u0637\u0627\u060c \u0645\u0646\u0627\u0628\u0639 \u0631\u0627 \u0627\u0634\u063a\u0627\u0644 \u06a9\u0646\u062f\u060c \u0647\u0646\u06af\u0627\u0645 \u0627\u062c\u0631\u0627\u06cc \u0639\u0627\u062f\u06cc \u0628\u0631 \u0648\u0638\u0627\u06cc\u0641 \u062c\u062f\u06cc\u062f \u062f\u0631 DolphinScheduler \u062a\u0623\u062b\u06cc\u0631 \u0645\u06cc \u06af\u0630\u0627\u0631\u062f. \u0639\u0644\u0627\u0648\u0647 \u0628\u0631 \u0627\u06cc\u0646\u060c \u0628\u0631\u062e\u06cc \u0627\u0632 \u0648\u0638\u0627\u06cc\u0641 \u0628\u0633\u06cc\u0627\u0631 \u062d\u06cc\u0627\u062a\u06cc \u0647\u0633\u062a\u0646\u062f \u0648 \u0628\u0627\u06cc\u062f \u0628\u0627 \u0645\u0648\u0641\u0642\u06cc\u062a \u0627\u062c\u0631\u0627 \u0634\u0648\u0646\u062f.<\/p>\n<p><strong>\u062a\u0639\u062f\u0627\u062f \u0648\u0638\u0627\u06cc\u0641 \u0631\u0627 \u0628\u0631\u0627\u06cc DolphinScheduler \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f<\/strong>: \u062f\u0631 \u0641\u0627\u06cc\u0644 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc\u060c \u062a\u0639\u062f\u0627\u062f \u0648\u0638\u0627\u06cc\u0641 \u067e\u06cc\u0634 \u0641\u0631\u0636 DolphinScheduler \u0628\u0631\u0627\u06cc \u0647\u0631 Worker 100 \u0648 \u0628\u0631\u0627\u06cc \u0647\u0631 Master 1000 \u0627\u0633\u062a. \u062f\u0631 \u0645\u062d\u06cc\u0637 \u0632\u0646\u062f\u0647 \u0627\u0645\u06a9\u0627\u0646 \u06a9\u0646\u062a\u0631\u0644 \u062f\u0642\u06cc\u0642 \u062a\u0639\u062f\u0627\u062f \u06a9\u0627\u0631\u0647\u0627 \u0648\u062c\u0648\u062f \u0646\u062f\u0627\u0631\u062f \u0648 DolphinScheduler \u0646\u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u0628\u0647 \u0637\u0648\u0631 \u062e\u0648\u062f\u06a9\u0627\u0631 \u062a\u062e\u0635\u06cc\u0635 \u0648\u0638\u0627\u06cc\u0641 \u0631\u0627 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u062f.<\/p>\n<p><strong>\u0642\u0628\u0644 \u0627\u0632 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u062c\u062f\u062f \u067e\u0633 \u0627\u0632 \u0634\u06a9\u0633\u062a\u060c \u062f\u0627\u062f\u0647 \u0647\u0627 \u0631\u0627 \u062f\u0631 \u062c\u062f\u0648\u0644 t_ds_command \u062d\u0630\u0641 \u06a9\u0646\u06cc\u062f<\/strong>: \u067e\u0633 \u0627\u0632 \u062a\u0623\u06cc\u06cc\u062f\u060c \u0648\u0642\u062a\u06cc Master \u0627\u0632 \u06a9\u0627\u0631 \u0628\u06cc\u0641\u062a\u062f\u060c \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0631\u0627 \u062f\u0631 \u0622\u0646 \u0646\u0645\u06cc\u200c\u0646\u0648\u06cc\u0633\u062f <code>t_ds_command<\/code>. \u062f\u0627\u062f\u0647 \u0647\u0627 \u0631\u0627 \u062f\u0631 \u0622\u0646 \u062e\u0648\u0627\u0647\u062f \u0646\u0648\u0634\u062a <code>t_ds_command<\/code> \u067e\u0633 \u0627\u0632 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u062c\u062f\u062f\u060c \u0627\u0645\u0627 \u0632\u0645\u0627\u0646 \u0627\u06cc\u0646 \u06a9\u0627\u0631 \u062d\u062f\u0648\u062f 1 \u062a\u0627 2 \u062b\u0627\u0646\u06cc\u0647 \u0627\u0633\u062a \u0648 \u0646\u0645\u06cc \u062a\u0648\u0627\u0646 \u0622\u0646 \u0631\u0627 \u0628\u0647 \u0635\u0648\u0631\u062a \u062f\u0633\u062a\u06cc \u062d\u0630\u0641 \u06a9\u0631\u062f.<\/p>\n<p><strong>\u062f\u0627\u062f\u0647 \u0647\u0627 \u0631\u0627 \u062f\u0631 \u062c\u062f\u0648\u0644 t_ds_process_instance \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0647\u06cc\u062f<\/strong>: \u0628\u0631 \u0627\u0633\u0627\u0633 \u0641\u0648\u0627\u0635\u0644 \u0632\u0645\u0627\u0646\u06cc\u060c \u0648\u0636\u0639\u06cc\u062a \u0647\u0645\u0647 \u06af\u0631\u062f\u0634\u200c\u0647\u0627\u06cc \u06a9\u0627\u0631\u06cc \u0631\u0627 \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0647\u06cc\u062f <code>t_ds_process_instance<\/code> \u062c\u062f\u0648\u0644 \u062f\u0631 \u0622\u0646 \u0645\u062d\u062f\u0648\u062f\u0647 \u0632\u0645\u0627\u0646\u06cc \u0628\u0631\u0627\u06cc \u067e\u0627\u06cc\u0627\u0646 \u062f\u0633\u062a\u06cc \u0622\u0646\u0647\u0627 (\u0627\u0645\u0627 \u0627\u06af\u0631 DolphinScheduler \u0648 \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0627\u0628\u0631\u062f\u0627\u062f\u0647 \u0631\u0648\u06cc \u06cc\u06a9 \u0633\u0631\u0648\u0631 \u0628\u0627\u0634\u0646\u062f\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u0628\u0647 \u0631\u0627\u062d\u062a\u06cc \u0645\u0646\u0627\u0628\u0639 \u0633\u0631\u0648\u0631 \u0631\u0627 \u067e\u0633 \u0627\u0632 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u062c\u062f\u062f DolphinScheduler \u067e\u0631 \u06a9\u0646\u062f\u060c \u06a9\u0647 \u0645\u0645\u06a9\u0646 \u0627\u0633\u062a \u067e\u0627\u06cc\u06af\u0627\u0647 \u062f\u0627\u062f\u0647 \u0627\u0628\u0631\u062f\u0627\u062f\u0647 \u0631\u0627 \u063a\u06cc\u0631 \u0642\u0627\u0628\u0644 \u062f\u0633\u062a\u0631\u0633 \u06a9\u0646\u062f).<\/p>\n<p>\u0631\u0627\u0647 \u062d\u0644 \u0647\u0627\u06cc \u0641\u0648\u0642 \u0631\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646 \u0628\u0647 \u0637\u0648\u0631 \u0639\u0645\u062f\u0647 \u0628\u0647 \u0645\u0648\u0627\u0631\u062f \u0632\u06cc\u0631 \u062a\u0642\u0633\u06cc\u0645 \u06a9\u0631\u062f:<\/p>\n<ol>\n<li>\u0627\u0632 \u0632\u0645\u0627\u0646 \u062e\u0631\u0627\u0628\u06cc Master \u0627\u062c\u062a\u0646\u0627\u0628 \u06a9\u0646\u06cc\u062f \u06cc\u0627 \u0622\u0646 \u0631\u0627 \u06a9\u0627\u0647\u0634 \u062f\u0647\u06cc\u062f.<\/li>\n<li>\u0648\u0638\u0627\u06cc\u0641 MisFire \u0631\u0627 \u067e\u0633 \u0627\u0632 \u062a\u0648\u0642\u0641 Master \u0627\u062c\u0631\u0627 \u0646\u06a9\u0646\u06cc\u062f.<\/li>\n<\/ol>\n<p><strong>\u0627\u0648\u0644\u060c &#8220;Avoid or Reduce Master Downtime&#8221;<\/strong>: \u062f\u0633\u062a\u06cc\u0627\u0628\u06cc \u0628\u0647 \u0627\u06cc\u0646 \u0627\u0645\u0631 \u062f\u0631 \u0645\u062d\u06cc\u0637 \u062a\u0648\u0644\u06cc\u062f \u062f\u0634\u0648\u0627\u0631 \u0627\u0633\u062a. \u0641\u0631\u0636 \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u06a9\u0627\u0645\u067e\u06cc\u0648\u062a\u0631\u06cc \u0627\u06cc\u0646 \u0627\u0633\u062a \u06a9\u0647 \u0628\u0631\u062e\u06cc \u0627\u0632 \u0645\u0633\u0627\u0626\u0644 \u0628\u0627 \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 100\u066a \u062f\u0631 \u06cc\u06a9 \u0646\u0642\u0637\u0647 \u0632\u0645\u0627\u0646\u06cc \u062e\u0627\u0635 \u0631\u062e \u0645\u06cc \u062f\u0647\u062f\u060c \u0628\u0647 \u0647\u0645\u06cc\u0646 \u062f\u0644\u06cc\u0644 \u0627\u0633\u062a \u06a9\u0647 \u0645\u0639\u0645\u0627\u0631\u06cc \u0647\u0627\u06cc \u0645\u06cc\u06a9\u0631\u0648\u0633\u0631\u0648\u06cc\u0633 \u0645\u062e\u062a\u0644\u0641\u060c \u062f\u0631 \u062f\u0633\u062a\u0631\u0633 \u0628\u0648\u062f\u0646 \u0628\u0627\u0644\u0627 (HA)\u060c \u0686\u0646\u062f \u0641\u0639\u0627\u0644 \u0628\u0648\u062f\u0646 \u0648 \u0645\u06a9\u0627\u0646\u06cc\u0633\u0645 \u0647\u0627\u06cc \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0641\u0627\u062c\u0639\u0647 \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f.<\/p>\n<p><strong>\u062f\u0648\u0645\u060c &#8220;\u0648\u0638\u0627\u06cc\u0641 MisFire \u0631\u0627 \u0627\u062c\u0631\u0627 \u0646\u06a9\u0646\u06cc\u062f&#8221;<\/strong>: \u0628\u0627 \u062a\u0648\u062c\u0647 \u0628\u0647 \u0631\u0627\u0647 \u062d\u0644 \u0647\u0627\u06cc \u0642\u0628\u0644\u06cc \u0647\u06cc\u0686 \u0631\u0627\u0647 \u062d\u0644\u06cc \u0646\u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u0627\u06cc\u0646 \u0645\u0634\u06a9\u0644 \u0631\u0627 \u0628\u0647 \u0637\u0648\u0631 \u06a9\u0627\u0645\u0644 \u062d\u0644 \u06a9\u0646\u062f. \u0628\u0646\u0627\u0628\u0631\u0627\u06cc\u0646\u060c \u0628\u0631 \u0627\u0633\u0627\u0633 \u0622\u062e\u0631\u06cc\u0646 \u062a\u062c\u0632\u06cc\u0647 \u0648 \u062a\u062d\u0644\u06cc\u0644 \u0645\u0646\u0628\u0639 \u06a9\u062f\u060c \u0644\u0627\u0632\u0645 \u0627\u0633\u062a \u0627\u0635\u0644\u0627\u062d \u06a9\u062f \u0645\u0646\u0628\u0639 \u0648 \u06a9\u0627\u0645\u067e\u0627\u06cc\u0644 \u0645\u062c\u062f\u062f \u0628\u0633\u062a\u0647 \u0628\u0631\u0627\u06cc \u062d\u0644 \u0645\u0634\u06a9\u0644 \u062f\u0631 \u0646\u0638\u0631 \u06af\u0631\u0641\u062a\u0647 \u0634\u0648\u062f.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%DA%A9%D8%AF_%D9%85%D9%86%D8%A8%D8%B9_%D8%B1%D8%A7_%D8%A7%D8%B5%D9%84%D8%A7%D8%AD_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u06a9\u062f \u0645\u0646\u0628\u0639 \u0631\u0627 \u0627\u0635\u0644\u0627\u062d \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u06a9\u062f \u0645\u0646\u0628\u0639 \u06a9\u0644\u06cc\u062f \u0631\u0627 \u0628\u0647 \u0627\u06cc\u0646 \u0635\u0648\u0631\u062a \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0647\u06cc\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight java\"><code><span class=\"nc\">CronTrigger<\/span> <span class=\"n\">cronTrigger<\/span> <span class=\"o\">=<\/span> <span class=\"n\">newTrigger<\/span><span class=\"o\">()<\/span>\n        <span class=\"o\">.<\/span><span class=\"na\">withIdentity<\/span><span class=\"o\">(<\/span><span class=\"n\">triggerKey<\/span><span class=\"o\">)<\/span>\n        <span class=\"o\">.<\/span><span class=\"na\">startAt<\/span><span class=\"o\">(<\/span><span class=\"n\">startDate<\/span><span class=\"o\">)<\/span>\n        <span class=\"o\">.<\/span><span class=\"na\">endAt<\/span><span class=\"o\">(<\/span><span class=\"n\">endDate<\/span><span class=\"o\">)<\/span>\n        <span class=\"o\">.<\/span><span class=\"na\">withSchedule<\/span><span class=\"o\">(<\/span>\n                <span class=\"n\">cronSchedule<\/span><span class=\"o\">(<\/span><span class=\"n\">cronExpression<\/span><span class=\"o\">)<\/span>\n                        <span class=\"o\">.<\/span><span class=\"na\">withMisfireHandlingInstructionDoNothing<\/span><span class=\"o\">()<\/span>\n<span class=\"c1\">\/\/                        .withMisfireHandlingInstructionIgnoreMisfires()<\/span>\n                        <span class=\"o\">.<\/span><span class=\"na\">inTimeZone<\/span><span class=\"o\">(<\/span><span class=\"nc\">DateUtils<\/span><span class=\"o\">.<\/span><span class=\"na\">getTimezone<\/span><span class=\"o\">(<\/span><span class=\"n\">timezoneId<\/span><span class=\"o\">)))<\/span>\n        <span class=\"o\">.<\/span><span class=\"na\">forJob<\/span><span class=\"o\">(<\/span><span class=\"n\">jobDetail<\/span><span class=\"o\">).<\/span><span class=\"na\">build<\/span><span class=\"o\">();<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<h2><span class=\"ez-toc-section\" id=\"%D8%AA%D8%A7%DB%8C%DB%8C%D8%AF_%D9%85%D8%AD%DB%8C%D8%B7_%D8%AA%D9%88%D8%B3%D8%B9%D9%87\"><\/span>\n<p>  \u062a\u0627\u06cc\u06cc\u062f \u0645\u062d\u06cc\u0637 \u062a\u0648\u0633\u0639\u0647<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0627\u0632 \u062c\u0627\u0648\u0627 8 \u0628\u0631\u0627\u06cc \u062a\u0627\u06cc\u06cc\u062f \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f.<\/p>\n<p>\u062a\u063a\u06cc\u06cc\u0631 \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0627\u062a\u0635\u0627\u0644 MySQL \u062f\u0631 <code>application.yaml<\/code> \u0641\u0627\u06cc\u0644 \u0647\u0627\u06cc Master\u060c Worker \u0648 API:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight yaml\"><code><span class=\"na\">spring<\/span><span class=\"pi\">:<\/span>\n  <span class=\"na\">config<\/span><span class=\"pi\">:<\/span>\n    <span class=\"na\">activate<\/span><span class=\"pi\">:<\/span>\n      <span class=\"na\">on-profile<\/span><span class=\"pi\">:<\/span> <span class=\"s\">mysql<\/span>\n  <span class=\"na\">datasource<\/span><span class=\"pi\">:<\/span>\n    <span class=\"na\">driver-class-name<\/span><span class=\"pi\">:<\/span> <span class=\"s\">com.mysql.cj.jdbc.Driver<\/span>\n    <span class=\"na\">url<\/span><span class=\"pi\">:<\/span> <span class=\"s\">jdbc:mysql:\/\/IP_ADDRESS:3306\/dolphinscheduler?useUnicode=true&amp;characterEncoding=UTF-8&amp;useSSL=false<\/span>\n    <span class=\"na\">username<\/span><span class=\"pi\">:<\/span> <span class=\"s\">USERNAME<\/span>\n    <span class=\"na\">password<\/span><span class=\"pi\">:<\/span> <span class=\"s\">PASSWORD<\/span>\n  <span class=\"na\">quartz<\/span><span class=\"pi\">:<\/span>\n    <span class=\"na\">properties<\/span><span class=\"pi\">:<\/span>\n      <span class=\"na\">org.quartz.jobStore.driverDelegateClass<\/span><span class=\"pi\">:<\/span> <span class=\"s\">org.quartz.impl.jdbcjobstore.StdJDBCDelegate<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u062a\u063a\u06cc\u06cc\u0631 \u0627\u0637\u0644\u0627\u0639\u0627\u062a Zookeeper \u062f\u0631 <code>application.yaml<\/code> \u0641\u0627\u06cc\u0644 \u0647\u0627\u06cc Master\u060c Worker \u0648 API:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight yaml\"><code><span class=\"na\">registry<\/span><span class=\"pi\">:<\/span>\n  <span class=\"na\">type<\/span><span class=\"pi\">:<\/span> <span class=\"s\">zookeeper<\/span>\n  <span class=\"na\">zookeeper<\/span><span class=\"pi\">:<\/span>\n    <span class=\"na\">namespace<\/span><span class=\"pi\">:<\/span> <span class=\"s\">dolphinscheduler_dev<\/span>\n    <span class=\"na\">connect-string<\/span><span class=\"pi\">:<\/span> <span class=\"s\">IP_ADDRESS:2181<\/span>\n    <span class=\"na\">retry-policy<\/span><span class=\"pi\">:<\/span>\n      <span class=\"na\">base-sleep-time<\/span><span class=\"pi\">:<\/span> <span class=\"s\">60ms<\/span>\n      <span class=\"na\">max-sleep<\/span><span class=\"pi\">:<\/span> <span class=\"s\">300ms<\/span>\n      <span class=\"na\">max-retries<\/span><span class=\"pi\">:<\/span> <span class=\"m\">5<\/span>\n    <span class=\"na\">session-timeout<\/span><span class=\"pi\">:<\/span> <span class=\"s\">30s<\/span>\n    <span class=\"na\">connection-timeout<\/span><span class=\"pi\">:<\/span> <span class=\"s\">9s<\/span>\n    <span class=\"na\">block-until-connected<\/span><span class=\"pi\">:<\/span> <span class=\"s\">600ms<\/span>\n    <span class=\"na\">digest<\/span><span class=\"pi\">:<\/span> <span class=\"s\">~<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0631\u0627 \u0627\u0635\u0644\u0627\u062d \u06a9\u0646\u06cc\u062f <code>pom.xml<\/code> \u062a\u062d\u062a BOM:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight xml\"><code><span class=\"nt\"><dependency\/><\/span>\n    <span class=\"nt\"><groupid\/><\/span>mysql<span class=\"nt\"\/>\n    <span class=\"nt\"><artifactid\/><\/span>mysql-connector-java<span class=\"nt\"\/>\n    <span class=\"nt\"><version\/><\/span>${mysql-connector.version}<span class=\"nt\"\/>\n<span class=\"c\"><!--                <scope>test<\/scope>--><\/span>\n<span class=\"nt\"\/>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0631\u0627 \u0627\u0635\u0644\u0627\u062d \u06a9\u0646\u06cc\u062f <code>logback-spring.xml<\/code> \u062a\u062d\u062a API\u060c Master \u0648 Worker \u0628\u0631\u0627\u06cc \u0641\u0639\u0627\u0644 \u06a9\u0631\u062f\u0646 \u06af\u0632\u0627\u0631\u0634 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight xml\"><code><span class=\"nt\"><root> <span class=\"na\">level=<\/span><span class=\"s\">\"INFO\"<\/span><span class=\"nt\">&gt;<\/span>\n<span class=\"c\"><!--        <if condition=\"${DOCKER:-false}\">--><\/span>\n<span class=\"c\"><!--            <then>--><\/span>\n<span class=\"c\"><!--                <appender-ref ref=\"STDOUT\"\/>--><\/span>\n<span class=\"c\"><!--            <\/then>--><\/span>\n<span class=\"c\"><!--        <\/if>--><\/span>\n    <span class=\"nt\"><appender-ref> <span class=\"na\">ref=<\/span><span class=\"s\">\"STDOUT\"<\/span><span class=\"nt\">\/&gt;<\/span>\n    <span class=\"nt\"><appender-ref> <span class=\"na\">ref=<\/span><span class=\"s\">\"APILOGFILE\"<\/span><span class=\"nt\">\/&gt;<\/span>\n<span class=\"nt\"\/><\/appender-ref><\/span><\/appender-ref><\/span><\/root><\/span>\n\n<span class=\"nt\"><root> <span class=\"na\">level=<\/span><span class=\"s\">\"INFO\"<\/span><span class=\"nt\">&gt;<\/span>\n<span class=\"c\"><!--        <if condition=\"${DOCKER:-false}\">--><\/span>\n<span class=\"c\"><!--            <then>--><\/span>\n<span class=\"c\"><!--                <appender-ref ref=\"STDOUT\"\/>--><\/span>\n<span class=\"c\"><!--            <\/then>--><\/span>\n<span class=\"c\"><!--        <\/if>--><\/span>\n    <span class=\"nt\"><appender-ref> <span class=\"na\">ref=<\/span><span class=\"s\">\"STDOUT\"<\/span><span class=\"nt\">\/&gt;<\/span>\n    <span class=\"nt\"><appender-ref> <span class=\"na\">ref=<\/span><span class=\"s\">\"TASKLOGFILE\"<\/span><span class=\"nt\">\/&gt;<\/span>\n    <span class=\"nt\"><appender-ref> <span class=\"na\">ref=<\/span><span class=\"s\">\"MASTERLOGFILE\"<\/span><span class=\"nt\">\/&gt;<\/span>\n<span class=\"nt\"\/><\/appender-ref><\/span><\/appender-ref><\/span><\/appender-ref><\/span><\/root><\/span>\n\n<span class=\"nt\"><root> <span class=\"na\">level=<\/span><span class=\"s\">\"INFO\"<\/span><span class=\"nt\">&gt;<\/span>\n<span class=\"c\"><!--        <if condition=\"${DOCKER:-false}\">--><\/span>\n<span class=\"c\"><!--            <then>--><\/span>\n<span class=\"c\"><!--                <appender-ref ref=\"STDOUT\"\/>--><\/span>\n<span class=\"c\"><!--            <\/then>--><\/span>\n<span class=\"c\"><!--        <\/if>--><\/span>\n    <span class=\"nt\"><appender-ref> <span class=\"na\">ref=<\/span><span class=\"s\">\"STDOUT\"<\/span><span class=\"nt\">\/&gt;<\/span>\n    <span class=\"nt\"><appender-ref> <span class=\"na\">ref=<\/span><span class=\"s\">\"TASKLOGFILE\"<\/span><span class=\"nt\">\/&gt;<\/span>\n    <span class=\"nt\"><appender-ref> <span class=\"na\">ref=<\/span><span class=\"s\">\"WORKERLOGFILE\"<\/span><span class=\"nt\">\/&gt;<\/span>\n<span class=\"nt\"\/><\/appender-ref><\/span><\/appender-ref><\/span><\/appender-ref><\/span><\/root><\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>Master\u060c Worker \u0648 API \u0631\u0627 \u0634\u0631\u0648\u0639 \u06a9\u0646\u06cc\u062f:<\/p>\n<p><strong>Master Options VM<\/strong>: <code>-Dlogging.config=classpath:logback-spring.xml -Ddruid.mysql.usePingMethod=false -Dspring.profiles.active=mysql<\/code><\/p>\n<p><strong>\u06af\u0632\u06cc\u0646\u0647 \u0647\u0627\u06cc Worker VM<\/strong>: <code>-Dlogging.config=classpath:logback-spring.xml -Ddruid.mysql.usePingMethod=false -Dspring.profiles.active=mysql<\/code><\/p>\n<p><strong>\u06af\u0632\u06cc\u0646\u0647 \u0647\u0627\u06cc API VM<\/strong>: <code>-Dlogging.config=classpath:logback-spring.xml -Dspring.profiles.active=api,mysql<\/code><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/media2.dev.to\/dynamic\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhpmut8bp8y9x94a9gql4.png\" alt=\"\u062a\u0648\u0636\u06cc\u062d\u0627\u062a \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"800\" height=\"425\" title=\"\"><\/p>\n<p>\u0627\u06af\u0631 \u062e\u0637\u0627 \u0631\u062e \u062f\u0647\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>Error running 'ApiApplicationServer'\nError running ApiApplicationServer.\nThe command line is too long. Shorten the command line via JAR manifest or via a classpath file and rerun.\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0633\u067e\u0633 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/media2.dev.to\/dynamic\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbv3l82vlmg3b80uxozsn.png\" alt=\"\u062a\u0648\u0636\u06cc\u062d\u0627\u062a \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"800\" height=\"641\" title=\"\"><\/p>\n<p>\u0627\u06af\u0631 \u0628\u0647 \u062f\u0644\u06cc\u0644 \u0648\u062c\u0648\u062f \u062f\u0631\u0627\u06cc\u0648\u0631 MySQL JDBC\u060c \u062e\u0637\u0627 \u0647\u0645\u0686\u0646\u0627\u0646 \u0627\u062f\u0627\u0645\u0647 \u062f\u0627\u0634\u062a\u060c \u0645\u0648\u0627\u0631\u062f \u0632\u06cc\u0631 \u0631\u0627 \u062f\u0631 \u0642\u0633\u0645\u062a \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f <code>pom.xml<\/code> \u062a\u062d\u062a Master\u060c Worker \u0648 API:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight xml\"><code><span class=\"nt\"><dependency\/><\/span>\n    <span class=\"nt\"><groupid\/><\/span>mysql<span class=\"nt\"\/>\n    <span class=\"nt\"><artifactid\/><\/span>mysql-connector-java<span class=\"nt\"\/>\n    <span class=\"nt\"><version\/><\/span>8.0.33<span class=\"nt\"\/>\n<span class=\"nt\"\/>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<h2><span class=\"ez-toc-section\" id=\"%DA%AF%D8%B1%D8%AF%D8%A2%D9%88%D8%B1%DB%8C_%D9%88_%D8%A8%D8%B3%D8%AA%D9%87_%D8%A8%D9%86%D8%AF%DB%8C_%DA%A9%D8%A7%D9%85%D9%84\"><\/span>\n<p>  \u06af\u0631\u062f\u0622\u0648\u0631\u06cc \u0648 \u0628\u0633\u062a\u0647 \u0628\u0646\u062f\u06cc \u06a9\u0627\u0645\u0644<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u062a\u0648\u062c\u0647 \u0628\u0647 \u0627\u06cc\u0646 \u0646\u06a9\u062a\u0647 \u0645\u0647\u0645 \u0627\u0633\u062a \u06a9\u0647 \u0628\u0633\u062a\u0647 \u0627\u06cc\u062c\u0627\u062f \u0634\u062f\u0647 \u062f\u0631 \u0627\u06cc\u0646 \u0645\u0631\u062d\u0644\u0647 \u0628\u0627\u06cc\u062f \u0628\u0633\u062a\u0647 \u0627\u06cc \u0628\u0627\u0634\u062f \u06a9\u0647 \u0645\u0637\u0627\u0628\u0642 \u0628\u0627 \u0622\u0646 \u0627\u0635\u0644\u0627\u062d \u0634\u062f\u0647 \u0627\u0633\u062a <strong>&#8220;\u062a\u063a\u06cc\u06cc\u0631 \u06a9\u062f \u0645\u0646\u0628\u0639&#8221;<\/strong> \u0645\u062d\u06cc\u0637\u060c \u0646\u0647 \u0645\u062d\u06cc\u0637\u06cc \u06a9\u0647 \u0645\u0637\u0627\u0628\u0642 \u0628\u0627 \u0622\u0646 \u0627\u0635\u0644\u0627\u062d \u0634\u062f\u0647 \u0627\u0633\u062a <strong>&#8220;\u062a\u0623\u06cc\u06cc\u062f \u0645\u062d\u06cc\u0637 \u062a\u0648\u0633\u0639\u0647&#8221;<\/strong> \u0642\u062f\u0645!<\/p>\n<p>\u0627\u0632 \u062c\u0627\u0648\u0627 8 \u0628\u0631\u0627\u06cc \u0628\u0633\u062a\u0647 \u0628\u0646\u062f\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f.<\/p>\n<p>\u062f\u0633\u062a\u0648\u0631 \u0632\u06cc\u0631 \u0631\u0627 \u062f\u0631 \u062f\u0627\u06cc\u0631\u06a9\u062a\u0648\u0631\u06cc \u0631\u06cc\u0634\u0647 \u067e\u0631\u0648\u0698\u0647 \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u062f (\u0628\u0633\u062a\u0647 \u0628\u0646\u062f\u06cc \u0645\u0645\u06a9\u0646 \u0627\u0633\u062a \u06a9\u0645\u06cc \u0637\u0648\u0644 \u0628\u06a9\u0634\u062f):<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>mvn spotless:apply clean package <span class=\"nt\">-Dmaven<\/span>.test.skip<span class=\"o\">=<\/span><span class=\"nb\">true<\/span> <span class=\"nt\">-Prelease<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0641\u0627\u06cc\u0644 \u0647\u0627\u06cc \u0628\u0627\u06cc\u0646\u0631\u06cc \u0628\u0633\u062a\u0647 \u0628\u0646\u062f\u06cc \u0634\u062f\u0647 \u062f\u0631 \u0622\u0646 \u0642\u0631\u0627\u0631 \u062e\u0648\u0627\u0647\u0646\u062f \u06af\u0631\u0641\u062a <code>dolphinscheduler-dist\/target<\/code> \u0628\u0627 <code>.tar.gz<\/code> \u067e\u0633\u0648\u0646\u062f.<\/p>\n<p>\u0633\u067e\u0633\u060c \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u062f\u0648\u0628\u0627\u0631\u0647 \u0627\u0633\u062a\u0642\u0631\u0627\u0631 \u06a9\u0646\u06cc\u062f \u062a\u0627 \u0628\u0631\u0631\u0633\u06cc \u06a9\u0646\u06cc\u062f \u06a9\u0647 \u0622\u06cc\u0627 \u0645\u0634\u06a9\u0644\u0627\u062a \u0642\u0628\u0644\u06cc \u062d\u0644 \u0634\u062f\u0647\u200c\u0627\u0646\u062f \u06cc\u0627 \u062e\u06cc\u0631.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D9%81%D9%82%D8%B7_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%B1%D8%A7_%DA%A9%D8%A7%D9%85%D9%BE%D8%A7%DB%8C%D9%84_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0641\u0642\u0637 \u06cc\u06a9 \u0645\u0627\u0698\u0648\u0644 \u0631\u0627 \u06a9\u0627\u0645\u067e\u0627\u06cc\u0644 \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u062d\u0631\u06a9\u062a \u0628\u0647 <code>dolphinscheduler-scheduler-quartz<\/code> \u062f\u0627\u06cc\u0631\u06a9\u062a\u0648\u0631\u06cc \u0648 \u0627\u062c\u0631\u0627:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>mvn spotless:apply clean package <span class=\"nt\">-Dmaven<\/span>.test.skip<span class=\"o\">=<\/span><span class=\"nb\">true<\/span> <span class=\"nt\">-Prelease<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0641\u0627\u06cc\u0644 \u0628\u0633\u062a\u0647 \u0628\u0646\u062f\u06cc \u0634\u062f\u0647 \u062f\u0631 <code>dolphinscheduler-scheduler-quartz\/target<\/code> \u062f\u0627\u06cc\u0631\u06a9\u062a\u0648\u0631\u06cc:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/media2.dev.to\/dynamic\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa2gkbgldki622y3xxmrf.png\" alt=\"\u062a\u0648\u0636\u06cc\u062d\u0627\u062a \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"800\" height=\"425\" title=\"\"><\/p>\n<p>\u0622\u0646 \u0631\u0627 \u062f\u0631 \u0633\u0631\u0648\u0631 \u062c\u0627\u06cc\u06af\u0632\u06cc\u0646 \u06a9\u0646\u06cc\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>su dolphinscheduler -\n<span class=\"nb\">mv<\/span> \/opt\/module\/dolphinscheduler-3.2.1\/master-server\/libs\/dolphinscheduler-scheduler-quartz-3.2.1.jar \/opt\/module\/dolphinscheduler-3.2.1\/master-server\/libs\/dolphinscheduler-scheduler-quartz-3.2.1.jar.bak\n<span class=\"nb\">mv<\/span> \/opt\/module\/dolphinscheduler-3.2.1\/api-server\/libs\/dolphinscheduler-scheduler-quartz-3.2.1.jar \/opt\/module\/dolphinscheduler-3.2.1\/api-server\/libs\/dolphinscheduler-scheduler-quartz-3.2.1.jar.bak\n\n<span class=\"nb\">cp <\/span>dolphinscheduler-scheduler-quartz-3.2.1.jar \/opt\/module\/dolphinscheduler-3.2.1\/master-server\/libs\/dolphinscheduler-scheduler-quartz-3.2.1.jar\n<span class=\"nb\">cp <\/span>dolphinscheduler-scheduler-quartz-3.2.1.jar \/opt\/module\/dolphinscheduler-3.2.1\/api-server\/libs\/dolphinscheduler-scheduler-quartz-3.2.1.jar\n\n<span class=\"nb\">chown<\/span> <span class=\"nt\">-R<\/span> dolphinscheduler:dolphinscheduler \/opt\/module\/dolphinscheduler-3.2.1\/\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0633\u067e\u0633\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f DolphinScheduler \u0631\u0627 \u0645\u062c\u062f\u062f\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f \u0648 \u0628\u0631\u0631\u0633\u06cc \u06a9\u0646\u06cc\u062f \u06a9\u0647 \u0622\u06cc\u0627 \u0645\u0634\u06a9\u0644 \u0642\u0628\u0644\u06cc \u062d\u0644 \u0634\u062f\u0647 \u0627\u0633\u062a \u06cc\u0627 \u062e\u06cc\u0631.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B4%DA%A9%D9%84_%D8%AD%D9%84_%D8%B4%D8%AF\"><\/span>\n<p>  \u0645\u0634\u06a9\u0644 \u062d\u0644 \u0634\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u067e\u0633 \u0627\u0632 \u0628\u0627\u0632\u062a\u0648\u0644\u06cc\u062f \u0645\u062c\u062f\u062f \u0645\u0648\u0636\u0648\u0639\u060c \u0645\u0634\u062e\u0635 \u0634\u062f \u06a9\u0647 \u0645\u0634\u06a9\u0644 \u062d\u0644 \u0634\u062f\u0647 \u0627\u0633\u062a.<\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u0628\u0627\u0632\u062a\u0648\u0644\u06cc\u062f \u0645\u0634\u06a9\u0644 \u062f\u0631 DolphinScheduler\u060c \u0648\u0638\u06cc\u0641\u0647 Shell \u0632\u06cc\u0631 \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f: current_timestamp() { date +&#8221;%Y-%m-%d %H:%M:%S&#8221; } TIMESTAMP=$(current_timestamp) echo $TIMESTAMP sleep 60 \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f \u0627\u0633\u062a\u0631\u0627\u062a\u0698\u06cc \u0627\u062c\u0631\u0627\u06cc \u06af\u0631\u062f\u0634 \u06a9\u0627\u0631 \u062f\u0631 DolphinScheduler \u0628\u0647 \u0635\u0648\u0631\u062a \u0645\u0648\u0627\u0632\u06cc \u062a\u0646\u0638\u06cc\u0645 \u0634\u062f\u0647 \u0627\u0633\u062a. \u0641\u0627\u0635\u0644\u0647 \u0632\u0645\u0627\u0646\u0628\u0646\u062f\u06cc 10 \u062b\u0627\u0646\u06cc\u0647 \u062a\u0646\u0638\u06cc\u0645 \u0634\u062f\u0647 \u0627\u0633\u062a. \u067e\u0633 \u0627\u0632 \u0627\u0633\u062a\u0642\u0631\u0627\u0631 \u0648\u0638\u06cc\u0641\u0647 \u0628\u0631\u0646\u0627\u0645\u0647 &hellip;<\/p>\n","protected":false},"author":2,"featured_media":92214,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"https:\/\/media2.dev.to\/dynamic\/image\/width=1000,height=500,fit=cover,gravity=auto,format=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Folyac1ywyc7tt76s7dft.png","fifu_image_alt":"","footnotes":""},"categories":[339],"tags":[],"class_list":["post-92213","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dev"],"_links":{"self":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/92213","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/comments?post=92213"}],"version-history":[{"count":0,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/92213\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media\/92214"}],"wp:attachment":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media?parent=92213"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/categories?post=92213"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/tags?post=92213"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}