This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler-website.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 15119c66f Automated deployment: 
2649e95f1ffc6bc4cff51741169273f587195bd6
15119c66f is described below

commit 15119c66fb01cb29f7617294e9ea5dbc48e8c288
Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
AuthorDate: Thu Jun 9 05:06:39 2022 +0000

    Automated deployment: 2649e95f1ffc6bc4cff51741169273f587195bd6
---
 .../dev/user_doc/architecture/configuration.html   |   5 +
 .../dev/user_doc/architecture/configuration.json   |   2 +-
 .../{task/switch.html => metrics/metrics.html}     | 162 +++++++++++++++++----
 en-us/docs/dev/user_doc/guide/metrics/metrics.json |   6 +
 en-us/docs/dev/user_doc/guide/task/datax.html      |   2 +
 en-us/docs/dev/user_doc/guide/task/datax.json      |   2 +-
 en-us/docs/dev/user_doc/guide/task/jupyter.html    |   2 +
 en-us/docs/dev/user_doc/guide/task/jupyter.json    |   2 +-
 en-us/docs/dev/user_doc/guide/task/python.html     |   2 +
 en-us/docs/dev/user_doc/guide/task/python.json     |   2 +-
 en-us/docs/dev/user_doc/guide/task/shell.html      |   2 +
 en-us/docs/dev/user_doc/guide/task/shell.json      |   2 +-
 en-us/docs/dev/user_doc/guide/task/switch.html     |  46 +++---
 en-us/docs/dev/user_doc/guide/task/switch.json     |   2 +-
 img/metrics/metrics-datasource.png                 | Bin 0 -> 336581 bytes
 img/metrics/metrics-master.png                     | Bin 0 -> 467778 bytes
 img/metrics/metrics-worker.png                     | Bin 0 -> 403432 bytes
 img/tasks/demo/switch_01.png                       | Bin 0 -> 117194 bytes
 img/tasks/demo/switch_02.png                       | Bin 0 -> 141217 bytes
 img/tasks/demo/switch_03.png                       | Bin 0 -> 148408 bytes
 img/tasks/demo/switch_04.png                       | Bin 0 -> 125565 bytes
 .../dev/user_doc/architecture/configuration.html   |   5 +
 .../dev/user_doc/architecture/configuration.json   |   2 +-
 zh-cn/docs/dev/user_doc/guide/task/datax.html      |   2 +
 zh-cn/docs/dev/user_doc/guide/task/datax.json      |   2 +-
 zh-cn/docs/dev/user_doc/guide/task/jupyter.html    |   4 +-
 zh-cn/docs/dev/user_doc/guide/task/jupyter.json    |   2 +-
 zh-cn/docs/dev/user_doc/guide/task/python.html     |   2 +
 zh-cn/docs/dev/user_doc/guide/task/python.json     |   2 +-
 zh-cn/docs/dev/user_doc/guide/task/shell.html      |   2 +
 zh-cn/docs/dev/user_doc/guide/task/shell.json      |   2 +-
 zh-cn/docs/dev/user_doc/guide/task/switch.html     |  52 ++++---
 zh-cn/docs/dev/user_doc/guide/task/switch.json     |   2 +-
 33 files changed, 232 insertions(+), 86 deletions(-)

diff --git a/en-us/docs/dev/user_doc/architecture/configuration.html 
b/en-us/docs/dev/user_doc/architecture/configuration.html
index 6041d2a94..cecb22131 100644
--- a/en-us/docs/dev/user_doc/architecture/configuration.html
+++ b/en-us/docs/dev/user_doc/architecture/configuration.html
@@ -454,6 +454,11 @@ Currently, DS just makes a basic config, remember to 
config further JVM options
 <td>false</td>
 <td>specify whether in development state</td>
 </tr>
+<tr>
+<td>task.resource.limit.state</td>
+<td>false</td>
+<td>specify whether in resource limit state</td>
+</tr>
 </tbody>
 </table>
 <h3>application-api.properties [API-service log config]</h3>
diff --git a/en-us/docs/dev/user_doc/architecture/configuration.json 
b/en-us/docs/dev/user_doc/architecture/configuration.json
index 0cf7663b1..108753610 100644
--- a/en-us/docs/dev/user_doc/architecture/configuration.json
+++ b/en-us/docs/dev/user_doc/architecture/configuration.json
@@ -1,6 +1,6 @@
 {
   "filename": "configuration.md",
-  "__html": "<!-- markdown-link-check-disable 
-->\n<h1>Configuration</h1>\n<h2>Preface</h2>\n<p>This document explains the 
DolphinScheduler application configurations according to DolphinScheduler-1.3.x 
versions.</p>\n<h2>Directory Structure</h2>\n<p>Currently, all the 
configuration files are under [conf ] directory.\nCheck the following 
simplified DolphinScheduler installation directories to have a direct view 
about the position of [conf] directory and configuration files it has.\nThis  
[...]
+  "__html": "<!-- markdown-link-check-disable 
-->\n<h1>Configuration</h1>\n<h2>Preface</h2>\n<p>This document explains the 
DolphinScheduler application configurations according to DolphinScheduler-1.3.x 
versions.</p>\n<h2>Directory Structure</h2>\n<p>Currently, all the 
configuration files are under [conf ] directory.\nCheck the following 
simplified DolphinScheduler installation directories to have a direct view 
about the position of [conf] directory and configuration files it has.\nThis  
[...]
   "link": "/dist/en-us/docs/dev/user_doc/architecture/configuration.html",
   "meta": {}
 }
\ No newline at end of file
diff --git a/en-us/docs/dev/user_doc/guide/task/switch.html 
b/en-us/docs/dev/user_doc/guide/metrics/metrics.html
similarity index 70%
copy from en-us/docs/dev/user_doc/guide/task/switch.html
copy to en-us/docs/dev/user_doc/guide/metrics/metrics.html
index ff01d1784..3b7161ff4 100644
--- a/en-us/docs/dev/user_doc/guide/task/switch.html
+++ b/en-us/docs/dev/user_doc/guide/metrics/metrics.html
@@ -3,47 +3,147 @@
 <head>
   <meta charset="UTF-8">
   <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, user-scalable=no">
-  <meta name="keywords" content="switch">
-  <meta name="description" content="switch">
-  <title>switch</title>
+  <meta name="keywords" content="metrics">
+  <meta name="description" content="metrics">
+  <title>metrics</title>
   <link rel="shortcut icon" href="/img/favicon.ico">
   <link rel="stylesheet" href="/build/vendor.eeae4ed.css">
 </head>
 <body>
-  <div id="root"><div class="md2html docs-page" data-reactroot=""><header 
class="header-container header-container-dark"><div class="banner-tips"><div>🤔 
Have queries regarding Apache DolphinScheduler, Join Slack channel to disscuss 
them <a class="link-tips" 
href="https://s.apache.org/dolphinscheduler-slack";>join #dolphinscheduler 
channel</a>! 🌟</div></div><div class="header-body"><span class="mobile-menu-btn 
mobile-menu-btn-dark"></span><a href="/en-us/index.html"><img class="logo" 
src=" [...]
-<p>The switch is a conditional judgment node, decide the branch executes 
according to the value of <a href="../parameter/global.md">global variable</a> 
and the expression result written by the user.</p>
-<h2>Create</h2>
-<p>Drag from the toolbar <img src="/img/switch.png" width="20"/>  task node to 
canvas to create a task.
-<strong>Note</strong> After created a switch task, you must first configure 
the upstream and downstream, then configure the parameter of task branches.</p>
-<h2>Parameter</h2>
+  <div id="root"><div class="md2html docs-page" data-reactroot=""><header 
class="header-container header-container-dark"><div class="banner-tips"><div>🤔 
Have queries regarding Apache DolphinScheduler, Join Slack channel to disscuss 
them <a class="link-tips" 
href="https://s.apache.org/dolphinscheduler-slack";>join #dolphinscheduler 
channel</a>! 🌟</div></div><div class="header-body"><span class="mobile-menu-btn 
mobile-menu-btn-dark"></span><a href="/en-us/index.html"><img class="logo" 
src=" [...]
+<p>Apache DolphinScheduler has export some metrics to monitor the system. We 
use micrometer for the exporter facade, and
+the default exporter is prometheus, more exporter is coming soon.</p>
+<h2>Quick Start</h2>
+<p>You can add the following config in master/worker/alert/api's yaml file to 
open the metrics exporter.</p>
+<pre><code class="language-yaml"><span class="hljs-attr">metrics:</span>
+  <span class="hljs-attr">enabled:</span> <span 
class="hljs-literal">true</span>
+</code></pre>
+<p>Once you open the metrics exporter, you can access the metrics by the url: 
<code>http://ip:port/actuator/prometheus</code></p>
+<p>The exporter port is the <code>server.port</code> defined in 
application.yaml, e.g: master: <code>server.port: 5679</code>, worker: 
<code>server.port: 1235</code>, alert: <code>server.port: 50053</code>, api: 
<code>server.port: 12345</code>.</p>
+<p>For example, you can get the master metrics by <code>curl 
http://localhost:5679/actuator/prometheus</code></p>
+<p>We have prepared the out-of-the-box Grafana configuration for you, you can 
find the Grafana dashboard
+at <code>dolphinscheduler-meter/resources/grafana</code>, you can directly 
import these dashboards to grafana.</p>
+<p>If you want to try at docker, you can use the following command to start 
the prometheus with grafana:</p>
+<pre><code class="language-shell">cd 
dolphinscheduler-meter/src/main/resources/grafana-demo
+docker compose up
+</code></pre>
+<p>Then you can access the grafana by the url: 
<code>http://localhost/3001</code></p>
+<p><img src="/img/metrics/metrics-master.png" alt="image.png">
+<img src="/img/metrics/metrics-worker.png" alt="image.png">
+<img src="/img/metrics/metrics-datasource.png" alt="image.png"></p>
+<h2>Master Metrics</h2>
+<p>Master metrics are exported by the DolphinScheduler master server.</p>
+<h3>System Metrics</h3>
 <ul>
-<li>Node name: The node name in a workflow definition is unique.</li>
-<li>Run flag: Identifies whether this node schedules normally, if it does not 
need to execute, select the <code>prohibition execution</code>.</li>
-<li>Descriptive information: Describe the function of the node.</li>
-<li>Task priority: When the number of worker threads is insufficient, execute 
in the order of priority from high to low, and tasks with the same priority 
will execute in a first-in first-out order.</li>
-<li>Worker grouping: Assign tasks to the machines of the worker group to 
execute. If <code>Default</code> is selected, randomly select a worker machine 
for execution.</li>
-<li>Times of failed retry attempts: The number of times the task failed to 
resubmit. You can select from drop-down or fill-in a number.</li>
-<li>Failed retry interval: The time interval for resubmitting the task after a 
failed task. You can select from drop-down or fill-in a number.</li>
-<li>Timeout alarm: Check the timeout alarm and timeout failure. When the task 
runs exceed the &quot;timeout&quot;, an alarm email will send and the task 
execution will fail.</li>
-<li>Condition: You can configure multiple conditions for the switch task. When 
the conditions are satisfied, execute the configured branch. You can configure 
multiple different conditions to satisfy different businesses.</li>
-<li>Branch flow: The default branch flow, when all the conditions are not 
satisfied, execute this branch flow.</li>
+<li>dolphinscheduler_master_overload_count: Indicates the number of times the 
master has been overloaded.</li>
+<li>dolphinscheduler_master_consume_command_count: Indicates the number of 
commands has consumed.</li>
 </ul>
-<h2>Detail</h2>
-<p>Here we have three tasks, the dependencies are <code>A -&gt; B -&gt; [C, 
D]</code>, and <code>task_a</code> is a shell task and <code>task_b</code> is a 
switch task</p>
+<h3>Process Metrics</h3>
 <ul>
-<li>In task A, a global variable named <code>id</code> is defined through <a 
href="../parameter/global.md">global variable</a>, and the declaration method 
is <code>${setValue(id=1)}</code></li>
-<li>Task B adds conditions and uses global variables declared upstream to 
achieve conditional judgment (Note: switch can get the global variables value, 
as long as its direct or indirect upstream have already assigned the global 
variables before switch acquires). We want to execute task C when <code>id = 
1</code>, otherwise run task D
+<li>dolphinscheduler_create_command_count: Indicates the number of command has 
been inserted.</li>
+<li>dolphinscheduler_process_instance_submit_count: Indicates the number of 
process has been submitted.</li>
+<li>dolphinscheduler_process_instance_running_gauge: Indicates the number of 
process are running now.</li>
+<li>dolphinscheduler_process_instance_timeout_count: Indicates the number of 
process has been timeout.</li>
+<li>dolphinscheduler_process_instance_finish_count: Indicates the number of 
process has been finished, include success or
+failure.</li>
+<li>dolphinscheduler_process_instance_success_count: Indicates the number of 
process has been successful.</li>
+<li>dolphinscheduler_process_instance_stop_count: Indicates the number of 
process has been stopped.</li>
+<li>dolphinscheduler_process_instance_failover_count: Indicates the number of 
process has been failed over.</li>
+</ul>
+<h3>Task Metrics</h3>
+<ul>
+<li>dolphinscheduler_task_timeout_count: Indicates the number of tasks has 
been timeout.</li>
+<li>dolphinscheduler_task_finish_count: Indicates the number of tasks has been 
finished, include success or failure.</li>
+<li>dolphinscheduler_task_success_count: Indicates the number of tasks has 
been successful.</li>
+<li>dolphinscheduler_task_timeout_count: Indicates the number of tasks has 
been timeout.</li>
+<li>dolphinscheduler_task_retry_count: Indicates the number of tasks has been 
retry.</li>
+<li>dolphinscheduler_task_failover_count: Indicates the number of tasks has 
been failover.</li>
+<li>dolphinscheduler_task_dispatch_count: Indicates the number of tasks has 
been dispatched to worker.</li>
+<li>dolphinscheduler_task_dispatch_failed_count: Indicates the number of tasks 
dispatched failed, if dispatched failed
+will retry.</li>
+<li>dolphinscheduler_task_dispatch_error_count: Indicates the number of tasks 
dispatched error, if dispatched error, means
+there are exception occur.</li>
+</ul>
+<h2>Worker Metrics</h2>
+<p>Worker metrics are exported by the DolphinScheduler worker server.</p>
+<h3>System Metrics</h3>
+<ul>
+<li>dolphinscheduler_worker_overload_count: Indicates the number of times the 
worker has been overloaded.</li>
+<li>dolphinscheduler_worker_submit_queue_is_full_count: Indicates the number 
of times the worker's submit queue has been
+full.</li>
+</ul>
+<h3>Task Metrics</h3>
 <ul>
-<li>Configure task C to run when the global variable <code>id=1</code>. Then 
edit <code>${id} == 1</code> in the condition of task B, and select 
<code>C</code> as branch flow</li>
-<li>For other tasks, select <code>D</code> as branch flow</li>
+<li>dolphinscheduler_task_execute_count: Indicates the number of times a task 
has been executed, it contains a tag -
+<code>task_type</code>.</li>
+<li>dolphinscheduler_task_execution_count: Indicates the total number of task 
has been executed.</li>
+<li>dolphinscheduler_task_execution_timer: Indicates the time spent executing 
tasks.</li>
 </ul>
-</li>
+<h2>Default System Metrics</h2>
+<p>In each server, there are some default metrics related to the system 
instance.</p>
+<h3>Database Metrics</h3>
+<ul>
+<li>hikaricp_connections_creation_seconds_max: Connection creation time 
max.</li>
+<li>hikaricp_connections_creation_seconds_count: Connection creation time 
count.</li>
+<li>hikaricp_connections_creation_seconds_sum: Connection creation time 
sum.</li>
+<li>hikaricp_connections_acquire_seconds_max: Connection acquire time max.</li>
+<li>hikaricp_connections_acquire_seconds_count: Connection acquire time 
count.</li>
+<li>hikaricp_connections_acquire_seconds_sum: Connection acquire time sum.</li>
+<li>hikaricp_connections_usage_seconds_max: Connection usage max.</li>
+<li>hikaricp_connections_usage_seconds_count: Connection usage time count.</li>
+<li>hikaricp_connections_usage_seconds_sum: Connection usage time sum.</li>
+<li>hikaricp_connections_max: Max connections.</li>
+<li>hikaricp_connections_min Min connections</li>
+<li>hikaricp_connections_active: Active connections.</li>
+<li>hikaricp_connections_idle: Idle connections.</li>
+<li>hikaricp_connections_pending: Pending connections.</li>
+<li>hikaricp_connections_timeout_total: Timeout connections.</li>
+<li>hikaricp_connections: Total connections</li>
+<li>jdbc_connections_max: Maximum number of active connections that can be 
allocated at the same time.</li>
+<li>jdbc_connections_min: Minimum number of idle connections in the pool.</li>
+<li>jdbc_connections_idle: Number of established but idle connections.</li>
+<li>jdbc_connections_active: Current number of active connections that have 
been allocated from the data source.</li>
+</ul>
+<h3>JVM Metrics</h3>
+<ul>
+<li>jvm_buffer_total_capacity_bytes: An estimate of the total capacity of the 
buffers in this pool.</li>
+<li>jvm_buffer_count_buffers: An estimate of the number of buffers in the 
pool.</li>
+<li>jvm_buffer_memory_used_bytes: An estimate of the memory that the Java 
virtual machine is using for this buffer pool.</li>
+<li>jvm_memory_committed_bytes: The amount of memory in bytes that is 
committed for the Java virtual machine to use.</li>
+<li>jvm_memory_max_bytes: The maximum amount of memory in bytes that can be 
used for memory management.</li>
+<li>jvm_memory_used_bytes: The amount of used memory.</li>
+<li>jvm_threads_peak_threads: The peak live thread count since the Java 
virtual machine started or peak was reset.</li>
+<li>jvm_threads_states_threads: The current number of threads having NEW 
state.</li>
+<li>jvm_gc_memory_allocated_bytes_total: Incremented for an increase in the 
size of the (young) heap memory pool after one GC to before the next.</li>
+<li>jvm_gc_max_data_size_bytes: Max size of long-lived heap memory pool.</li>
+<li>jvm_gc_pause_seconds_count: Time spent count in GC pause.</li>
+<li>jvm_gc_pause_seconds_sum: Time spent sum in GC pause.</li>
+<li>jvm_gc_pause_seconds_max: Time spent max in GC pause.</li>
+<li>jvm_gc_live_data_size_bytes: Size of long-lived heap memory pool after 
reclamation.</li>
+<li>jvm_gc_memory_promoted_bytes_total: Count of positive increases in the 
size of the old generation memory pool before GC to after GC.</li>
+<li>jvm_classes_loaded_classes: The number of classes that are currently 
loaded in the Java virtual machine.</li>
+<li>jvm_threads_live_threads: The current number of live threads including 
both daemon and non-daemon threads.</li>
+<li>jvm_threads_daemon_threads: The current number of live daemon threads.</li>
+<li>jvm_classes_unloaded_classes_total: The total number of classes unloaded 
since the Java virtual machine has started execution.</li>
+<li>process_cpu_usage: The &quot;recent cpu usage&quot; for the Java Virtual 
Machine process.</li>
+<li>process_start_time_seconds: Start time of the process since unix 
epoch.</li>
+<li>process_uptime_seconds: The uptime of the Java virtual machine.</li>
+</ul>
+<h2>Other Metrics</h2>
+<ul>
+<li>jetty_threads_config_max: The maximum number of threads in the pool.</li>
+<li>jetty_threads_config_min: The minimum number of threads in the pool.</li>
+<li>jetty_threads_current: The total number of threads in the pool.</li>
+<li>jetty_threads_idle: The number of idle threads in the pool.</li>
+<li>jetty_threads_busy: The number of busy threads in the pool.</li>
+<li>jetty_threads_jobs: Number of jobs queued waiting for a thread.</li>
+<li>process_files_max_files: The maximum file descriptor count.</li>
+<li>process_files_open_files: The open file descriptor count.</li>
+<li>system_cpu_usage: The &quot;recent cpu usage&quot; for the whole 
system.</li>
+<li>system_cpu_count: The number of processors available to the Java virtual 
machine.</li>
+<li>system_load_average_1m: The sum of the number of runnable entities queued 
to available processors and the number of runnable entities running on the 
available processors averaged over a period of time.</li>
+<li>logback_events_total: Number of level events that made it to the logs</li>
 </ul>
-<p>The following shows the switch task configuration:</p>
-<p><img src="/img/switch_configure.jpg" alt="task-switch-configure"></p>
-<h2>Related Task</h2>
-<p><a href="conditions.md">condition</a>:<a 
href="conditions.md">Condition</a>task mainly executes the corresponding branch 
based on the execution result status (success, failure) of the upstream node.
-The <a href="switch.md">Switch</a> task mainly executes the corresponding 
branch based on the value of the <a href="../parameter/global.md">global 
parameter</a> and the judgment expression result written by the user.</p>
 </div></section><footer class="footer-container"><div 
class="footer-body"><div><h3>About us</h3><h4>Do you need feedback? Please 
contact us through the following ways.</h4></div><div 
class="contact-container"><ul><li><a 
href="/en-us/community/development/subscribe.html"><img class="img-base" 
src="/img/emailgray.png"/><img class="img-change" 
src="/img/emailblue.png"/><p>Email List</p></a></li><li><a 
href="https://twitter.com/dolphinschedule";><img class="img-base" 
src="/img/twittergray.png [...]
   <script src="/asset/js/react/react-with-addons.min.js"></script>
   <script src="/asset/js/react/react-dom.min.js"></script>
diff --git a/en-us/docs/dev/user_doc/guide/metrics/metrics.json 
b/en-us/docs/dev/user_doc/guide/metrics/metrics.json
new file mode 100644
index 000000000..08494c15a
--- /dev/null
+++ b/en-us/docs/dev/user_doc/guide/metrics/metrics.json
@@ -0,0 +1,6 @@
+{
+  "filename": "metrics.md",
+  "__html": "<h1>Introduction</h1>\n<p>Apache DolphinScheduler has export some 
metrics to monitor the system. We use micrometer for the exporter facade, 
and\nthe default exporter is prometheus, more exporter is coming 
soon.</p>\n<h2>Quick Start</h2>\n<p>You can add the following config in 
master/worker/alert/api's yaml file to open the metrics 
exporter.</p>\n<pre><code class=\"language-yaml\"><span 
class=\"hljs-attr\">metrics:</span>\n  <span 
class=\"hljs-attr\">enabled:</span> <span cla [...]
+  "link": "/dist/en-us/docs/dev/user_doc/guide/metrics/metrics.html",
+  "meta": {}
+}
\ No newline at end of file
diff --git a/en-us/docs/dev/user_doc/guide/task/datax.html 
b/en-us/docs/dev/user_doc/guide/task/datax.html
index f48bbedcc..1d12527f0 100644
--- a/en-us/docs/dev/user_doc/guide/task/datax.html
+++ b/en-us/docs/dev/user_doc/guide/task/datax.html
@@ -28,6 +28,8 @@
 <li><strong>Environment Name</strong>: Configure the environment name in which 
to run the script.</li>
 <li><strong>Number of failed retry attempts</strong>: The number of times the 
task failed to be resubmitted.</li>
 <li><strong>Failed retry interval</strong>: The time, in cents, interval for 
resubmitting the task after a failed task.</li>
+<li><strong>Cpu quota</strong>: Assign the specified CPU time quota to the 
task executed. Takes a percentage value. Default -1 means unlimited. For 
example, the full CPU load of one core is 100%,and that of 16 cores is 1600%. 
This function is controlled by <a 
href="../../architecture/configuration.md">task.resource.limit.state</a></li>
+<li><strong>Max memory</strong>:Assign the specified max memory to the task 
executed. Exceeding this limit will trigger oom to be killed and will not 
automatically retry. Takes an MB value. Default -1 means unlimited. This 
function is controlled by <a 
href="../../architecture/configuration.md">task.resource.limit.state</a></li>
 <li><strong>Delayed execution time</strong>: The time, in cents, that a task 
is delayed in execution.</li>
 <li><strong>Timeout alarm</strong>: Check the timeout alarm and timeout 
failure. When the task exceeds the &quot;timeout period&quot;, an alarm email 
will be sent and the task execution will fail.</li>
 <li><strong>Custom template</strong>: Custom the content of the DataX node's 
json profile when the default data source provided does not meet the required 
requirements.</li>
diff --git a/en-us/docs/dev/user_doc/guide/task/datax.json 
b/en-us/docs/dev/user_doc/guide/task/datax.json
index eece48440..35a3de567 100644
--- a/en-us/docs/dev/user_doc/guide/task/datax.json
+++ b/en-us/docs/dev/user_doc/guide/task/datax.json
@@ -1,6 +1,6 @@
 {
   "filename": "datax.md",
-  "__html": "<h1>DataX</h1>\n<h2>Overview</h2>\n<p>DataX task type for 
executing DataX programs. For DataX nodes, the worker will execute 
<code>${DATAX_HOME}/bin/datax.py</code> to analyze the input json 
file.</p>\n<h2>Create Task</h2>\n<ul>\n<li>Click Project Management -&gt; 
Project Name -&gt; Workflow Definition, and click the &quot;Create 
Workflow&quot; button to enter the DAG editing page.</li>\n<li>Drag the <img 
src=\"/img/tasks/icons/datax.png\" width=\"15\"/> from the toolbar to  [...]
+  "__html": "<h1>DataX</h1>\n<h2>Overview</h2>\n<p>DataX task type for 
executing DataX programs. For DataX nodes, the worker will execute 
<code>${DATAX_HOME}/bin/datax.py</code> to analyze the input json 
file.</p>\n<h2>Create Task</h2>\n<ul>\n<li>Click Project Management -&gt; 
Project Name -&gt; Workflow Definition, and click the &quot;Create 
Workflow&quot; button to enter the DAG editing page.</li>\n<li>Drag the <img 
src=\"/img/tasks/icons/datax.png\" width=\"15\"/> from the toolbar to  [...]
   "link": "/dist/en-us/docs/dev/user_doc/guide/task/datax.html",
   "meta": {}
 }
\ No newline at end of file
diff --git a/en-us/docs/dev/user_doc/guide/task/jupyter.html 
b/en-us/docs/dev/user_doc/guide/task/jupyter.html
index 491043ba7..74d6878ce 100644
--- a/en-us/docs/dev/user_doc/guide/task/jupyter.html
+++ b/en-us/docs/dev/user_doc/guide/task/jupyter.html
@@ -34,6 +34,8 @@ Click <a href="https://docs.conda.io/en/latest/";>here</a> for 
more information a
 <li>Worker grouping: Assign tasks to the machines of the worker group to 
execute. If <code>Default</code> is selected, randomly select a worker machine 
for execution.</li>
 <li>Number of failed retry attempts: The failure task resubmitting times. It 
supports drop-down and hand-filling.</li>
 <li>Failed retry interval: The time interval for resubmitting the task after a 
failed task. It supports drop-down and hand-filling.</li>
+<li>Cpu quota: Assign the specified CPU time quota to the task executed. Takes 
a percentage value. Default -1 means unlimited. For example, the full CPU load 
of one core is 100%,and that of 16 cores is 1600%. This function is controlled 
by <a 
href="../../architecture/configuration.md">task.resource.limit.state</a></li>
+<li>Max memory:Assign the specified max memory to the task executed. Exceeding 
this limit will trigger oom to be killed and will not automatically retry. 
Takes an MB value. Default -1 means unlimited. This function is controlled by 
<a href="../../architecture/configuration.md">task.resource.limit.state</a></li>
 <li>Timeout alarm: Check the timeout alarm and timeout failure. When the task 
exceeds the &quot;timeout period&quot;, an alarm email will send and the task 
execution will fail.</li>
 <li>Conda Env Name: Name of conda environment.</li>
 <li>Input Note Path: Path of input jupyter note template.</li>
diff --git a/en-us/docs/dev/user_doc/guide/task/jupyter.json 
b/en-us/docs/dev/user_doc/guide/task/jupyter.json
index e4cf9a068..b970793f2 100644
--- a/en-us/docs/dev/user_doc/guide/task/jupyter.json
+++ b/en-us/docs/dev/user_doc/guide/task/jupyter.json
@@ -1,6 +1,6 @@
 {
   "filename": "jupyter.md",
-  "__html": "<h1>Jupyter</h1>\n<h2>Overview</h2>\n<p>Use <code>Jupyter 
Task</code> to create a jupyter-type task and execute jupyter notes. When the 
worker executes <code>Jupyter Task</code>,\nit will use <code>papermill</code> 
to evaluate jupyter notes. Click <a 
href=\"https://papermill.readthedocs.io/en/latest/\";>here</a> for details about 
<code>papermill</code>.</p>\n<h2>Conda Configuration</h2>\n<ul>\n<li>Config 
<code>conda.path</code> in <code>common.properties</code> to the path of [...]
+  "__html": "<h1>Jupyter</h1>\n<h2>Overview</h2>\n<p>Use <code>Jupyter 
Task</code> to create a jupyter-type task and execute jupyter notes. When the 
worker executes <code>Jupyter Task</code>,\nit will use <code>papermill</code> 
to evaluate jupyter notes. Click <a 
href=\"https://papermill.readthedocs.io/en/latest/\";>here</a> for details about 
<code>papermill</code>.</p>\n<h2>Conda Configuration</h2>\n<ul>\n<li>Config 
<code>conda.path</code> in <code>common.properties</code> to the path of [...]
   "link": "/dist/en-us/docs/dev/user_doc/guide/task/jupyter.html",
   "meta": {}
 }
\ No newline at end of file
diff --git a/en-us/docs/dev/user_doc/guide/task/python.html 
b/en-us/docs/dev/user_doc/guide/task/python.html
index 77b63e198..f611b8b47 100644
--- a/en-us/docs/dev/user_doc/guide/task/python.html
+++ b/en-us/docs/dev/user_doc/guide/task/python.html
@@ -29,6 +29,8 @@ it will generate a temporary python script, and executes the 
script by the Linux
 <li>Environment Name: Configure the environment name in which to run the 
script.</li>
 <li>Number of failed retry attempts: The failure task resubmitting times. It 
supports drop-down and hand-filling.</li>
 <li>Failed retry interval: The time interval for resubmitting the task after a 
failed task. It supports drop-down and hand-filling.</li>
+<li>Cpu quota: Assign the specified CPU time quota to the task executed. Takes 
a percentage value. Default -1 means unlimited. For example, the full CPU load 
of one core is 100%,and that of 16 cores is 1600%. This function is controlled 
by <a 
href="../../architecture/configuration.md">task.resource.limit.state</a></li>
+<li>Max memory:Assign the specified max memory to the task executed. Exceeding 
this limit will trigger oom to be killed and will not automatically retry. 
Takes an MB value. Default -1 means unlimited. This function is controlled by 
<a href="../../architecture/configuration.md">task.resource.limit.state</a></li>
 <li>Timeout alarm: Check the timeout alarm and timeout failure. When the task 
exceeds the &quot;timeout period&quot;, an alarm email will send and the task 
execution will fail.</li>
 <li>Script: Python program developed by the user.</li>
 <li>Resource: Refers to the list of resource files that need to be called in 
the script, and the files uploaded or created by the resource center-file 
management.</li>
diff --git a/en-us/docs/dev/user_doc/guide/task/python.json 
b/en-us/docs/dev/user_doc/guide/task/python.json
index 4db59a744..a45db08fa 100644
--- a/en-us/docs/dev/user_doc/guide/task/python.json
+++ b/en-us/docs/dev/user_doc/guide/task/python.json
@@ -1,6 +1,6 @@
 {
   "filename": "python.md",
-  "__html": "<h1>Python Node</h1>\n<h2>Overview</h2>\n<p>Use <code>Python 
Task</code> to create a python-type task and execute python scripts. When the 
worker executes <code>Python Task</code>,\nit will generate a temporary python 
script, and executes the script by the Linux user with the same name as the 
tenant.</p>\n<h2>Create Task</h2>\n<ul>\n<li>Click Project Management-Project 
Name-Workflow Definition, and click the &quot;Create Workflow&quot; button to 
enter the DAG editing page.</ [...]
+  "__html": "<h1>Python Node</h1>\n<h2>Overview</h2>\n<p>Use <code>Python 
Task</code> to create a python-type task and execute python scripts. When the 
worker executes <code>Python Task</code>,\nit will generate a temporary python 
script, and executes the script by the Linux user with the same name as the 
tenant.</p>\n<h2>Create Task</h2>\n<ul>\n<li>Click Project Management-Project 
Name-Workflow Definition, and click the &quot;Create Workflow&quot; button to 
enter the DAG editing page.</ [...]
   "link": "/dist/en-us/docs/dev/user_doc/guide/task/python.html",
   "meta": {}
 }
\ No newline at end of file
diff --git a/en-us/docs/dev/user_doc/guide/task/shell.html 
b/en-us/docs/dev/user_doc/guide/task/shell.html
index ab301b4d4..6ec0b3232 100644
--- a/en-us/docs/dev/user_doc/guide/task/shell.html
+++ b/en-us/docs/dev/user_doc/guide/task/shell.html
@@ -28,6 +28,8 @@
 <li>Environment Name: Configure the environment name in which run the 
script.</li>
 <li>Times of failed retry attempts: The number of times the task failed to 
resubmit. You can select from drop-down or fill-in a number.</li>
 <li>Failed retry interval: The time interval for resubmitting the task after a 
failed task. You can select from drop-down or fill-in a number.</li>
+<li>Cpu quota: Assign the specified CPU time quota to the task executed. Takes 
a percentage value. Default -1 means unlimited. For example, the full CPU load 
of one core is 100%,and that of 16 cores is 1600%. This function is controlled 
by <a 
href="../../architecture/configuration.md">task.resource.limit.state</a></li>
+<li>Max memory:Assign the specified max memory to the task executed. Exceeding 
this limit will trigger oom to be killed and will not automatically retry. 
Takes an MB value. Default -1 means unlimited. This function is controlled by 
<a href="../../architecture/configuration.md">task.resource.limit.state</a></li>
 <li>Timeout alarm: Check the timeout alarm and timeout failure. When the task 
runs exceed the &quot;timeout&quot;, an alarm email will send and the task 
execution will fail.</li>
 <li>Script: Shell program developed by users.</li>
 <li>Resource: Refers to the list of resource files that called in the script, 
and upload or create files by the Resource Center file management.</li>
diff --git a/en-us/docs/dev/user_doc/guide/task/shell.json 
b/en-us/docs/dev/user_doc/guide/task/shell.json
index 5a8164e20..1d11dfdcc 100644
--- a/en-us/docs/dev/user_doc/guide/task/shell.json
+++ b/en-us/docs/dev/user_doc/guide/task/shell.json
@@ -1,6 +1,6 @@
 {
   "filename": "shell.md",
-  "__html": "<h1>Shell</h1>\n<h2>Overview</h2>\n<p>Shell task used to create a 
shell task type and execute a series of shell scripts. When the worker run the 
shell task, a temporary shell script is generated, and use the Linux user with 
the same name as the tenant executes the script.</p>\n<h2>Create 
Task</h2>\n<ul>\n<li>Click <code>Project -&gt; Management-Project -&gt; 
Name-Workflow Definition</code>, and click the <code>Create Workflow</code> 
button to enter the DAG editing page.</li> [...]
+  "__html": "<h1>Shell</h1>\n<h2>Overview</h2>\n<p>Shell task used to create a 
shell task type and execute a series of shell scripts. When the worker run the 
shell task, a temporary shell script is generated, and use the Linux user with 
the same name as the tenant executes the script.</p>\n<h2>Create 
Task</h2>\n<ul>\n<li>Click <code>Project -&gt; Management-Project -&gt; 
Name-Workflow Definition</code>, and click the <code>Create Workflow</code> 
button to enter the DAG editing page.</li> [...]
   "link": "/dist/en-us/docs/dev/user_doc/guide/task/shell.html",
   "meta": {}
 }
\ No newline at end of file
diff --git a/en-us/docs/dev/user_doc/guide/task/switch.html 
b/en-us/docs/dev/user_doc/guide/task/switch.html
index ff01d1784..05b39d914 100644
--- a/en-us/docs/dev/user_doc/guide/task/switch.html
+++ b/en-us/docs/dev/user_doc/guide/task/switch.html
@@ -11,10 +11,12 @@
 </head>
 <body>
   <div id="root"><div class="md2html docs-page" data-reactroot=""><header 
class="header-container header-container-dark"><div class="banner-tips"><div>🤔 
Have queries regarding Apache DolphinScheduler, Join Slack channel to disscuss 
them <a class="link-tips" 
href="https://s.apache.org/dolphinscheduler-slack";>join #dolphinscheduler 
channel</a>! 🌟</div></div><div class="header-body"><span class="mobile-menu-btn 
mobile-menu-btn-dark"></span><a href="/en-us/index.html"><img class="logo" 
src=" [...]
-<p>The switch is a conditional judgment node, decide the branch executes 
according to the value of <a href="../parameter/global.md">global variable</a> 
and the expression result written by the user.</p>
-<h2>Create</h2>
-<p>Drag from the toolbar <img src="/img/switch.png" width="20"/>  task node to 
canvas to create a task.
-<strong>Note</strong> After created a switch task, you must first configure 
the upstream and downstream, then configure the parameter of task branches.</p>
+<p>The switch is a conditional judgment node, decide the branch executes 
according to the value of <a href="../parameter/global.md">global variable</a> 
and the expression result written by the user.
+<strong>Note</strong> Execute expressions using 
javax.script.ScriptEngine.eval.</p>
+<h2>Create Task</h2>
+<p>Click Project -&gt; Management-Project -&gt; Name-Workflow Definition, and 
click the Create Workflow button to enter the DAG editing page.
+Drag from the toolbar <img src="/img/switch.png" width="20"/> task node to 
canvas to create a task.</p>
+<p><strong>Note</strong> After created a switch task, you must first configure 
the upstream and downstream, then configure the parameter of task branches.</p>
 <h2>Parameter</h2>
 <ul>
 <li>Node name: The node name in a workflow definition is unique.</li>
@@ -22,28 +24,32 @@
 <li>Descriptive information: Describe the function of the node.</li>
 <li>Task priority: When the number of worker threads is insufficient, execute 
in the order of priority from high to low, and tasks with the same priority 
will execute in a first-in first-out order.</li>
 <li>Worker grouping: Assign tasks to the machines of the worker group to 
execute. If <code>Default</code> is selected, randomly select a worker machine 
for execution.</li>
+<li>Environment name: The environment in Security, if not configured, it will 
not be used.</li>
+<li>Task group name: The group in Resources, if not configured, it will not be 
used.</li>
 <li>Times of failed retry attempts: The number of times the task failed to 
resubmit. You can select from drop-down or fill-in a number.</li>
 <li>Failed retry interval: The time interval for resubmitting the task after a 
failed task. You can select from drop-down or fill-in a number.</li>
+<li>Delay execution time: Task delay execution time.</li>
 <li>Timeout alarm: Check the timeout alarm and timeout failure. When the task 
runs exceed the &quot;timeout&quot;, an alarm email will send and the task 
execution will fail.</li>
 <li>Condition: You can configure multiple conditions for the switch task. When 
the conditions are satisfied, execute the configured branch. You can configure 
multiple different conditions to satisfy different businesses.</li>
 <li>Branch flow: The default branch flow, when all the conditions are not 
satisfied, execute this branch flow.</li>
 </ul>
-<h2>Detail</h2>
-<p>Here we have three tasks, the dependencies are <code>A -&gt; B -&gt; [C, 
D]</code>, and <code>task_a</code> is a shell task and <code>task_b</code> is a 
switch task</p>
-<ul>
-<li>In task A, a global variable named <code>id</code> is defined through <a 
href="../parameter/global.md">global variable</a>, and the declaration method 
is <code>${setValue(id=1)}</code></li>
-<li>Task B adds conditions and uses global variables declared upstream to 
achieve conditional judgment (Note: switch can get the global variables value, 
as long as its direct or indirect upstream have already assigned the global 
variables before switch acquires). We want to execute task C when <code>id = 
1</code>, otherwise run task D
-<ul>
-<li>Configure task C to run when the global variable <code>id=1</code>. Then 
edit <code>${id} == 1</code> in the condition of task B, and select 
<code>C</code> as branch flow</li>
-<li>For other tasks, select <code>D</code> as branch flow</li>
-</ul>
-</li>
-</ul>
-<p>The following shows the switch task configuration:</p>
-<p><img src="/img/switch_configure.jpg" alt="task-switch-configure"></p>
-<h2>Related Task</h2>
-<p><a href="conditions.md">condition</a>:<a 
href="conditions.md">Condition</a>task mainly executes the corresponding branch 
based on the execution result status (success, failure) of the upstream node.
-The <a href="switch.md">Switch</a> task mainly executes the corresponding 
branch based on the value of the <a href="../parameter/global.md">global 
parameter</a> and the judgment expression result written by the user.</p>
+<h2>Task Example</h2>
+<p>This is demonstrated using one switch task and three shell tasks.</p>
+<h3>Create a workflow</h3>
+<p>Create a new switch task, and three shell tasks downstream. The shell task 
is not required.
+The switch task needs to be connected with the downstream task to configure 
the relationship before the downstream task can be selected.</p>
+<p><img src="/img/tasks/demo/switch_01.png" alt="switch_01"></p>
+<h3>Set conditions</h3>
+<p>Configure the conditions and default branches. If the conditions are met, 
the specified branch will be taken. If the conditions are not met, the default 
branch will be taken.
+In the figure, if the value of the variable is &quot;A&quot;, the branch taskA 
is executed, if the value of the variable is &quot;B&quot;, the branch taskB is 
executed, and default is executed if both are not satisfied.</p>
+<p><img src="/img/tasks/demo/switch_02.png" alt="switch_02"></p>
+<p>Conditions use global variables, please refer to <a 
href="../parameter/global.md">Global Parameter</a>.
+The value of the global variable configured here is A.</p>
+<p><img src="/img/tasks/demo/switch_03.png" alt="switch_03"></p>
+<p>If executed correctly, then taskA will be executed correctly.</p>
+<h3>Execute</h3>
+<p>Execute and see if it works as expected. It can be seen that the specified 
downstream tasksA are executed as expected.</p>
+<p><img src="/img/tasks/demo/switch_04.png" alt="switch_04"></p>
 </div></section><footer class="footer-container"><div 
class="footer-body"><div><h3>About us</h3><h4>Do you need feedback? Please 
contact us through the following ways.</h4></div><div 
class="contact-container"><ul><li><a 
href="/en-us/community/development/subscribe.html"><img class="img-base" 
src="/img/emailgray.png"/><img class="img-change" 
src="/img/emailblue.png"/><p>Email List</p></a></li><li><a 
href="https://twitter.com/dolphinschedule";><img class="img-base" 
src="/img/twittergray.png [...]
   <script src="/asset/js/react/react-with-addons.min.js"></script>
   <script src="/asset/js/react/react-dom.min.js"></script>
diff --git a/en-us/docs/dev/user_doc/guide/task/switch.json 
b/en-us/docs/dev/user_doc/guide/task/switch.json
index 99a208639..a5a810640 100644
--- a/en-us/docs/dev/user_doc/guide/task/switch.json
+++ b/en-us/docs/dev/user_doc/guide/task/switch.json
@@ -1,6 +1,6 @@
 {
   "filename": "switch.md",
-  "__html": "<h1>Switch</h1>\n<p>The switch is a conditional judgment node, 
decide the branch executes according to the value of <a 
href=\"../parameter/global.md\">global variable</a> and the expression result 
written by the user.</p>\n<h2>Create</h2>\n<p>Drag from the toolbar <img 
src=\"/img/switch.png\" width=\"20\"/>  task node to canvas to create a 
task.\n<strong>Note</strong> After created a switch task, you must first 
configure the upstream and downstream, then configure the parame [...]
+  "__html": "<h1>Switch</h1>\n<p>The switch is a conditional judgment node, 
decide the branch executes according to the value of <a 
href=\"../parameter/global.md\">global variable</a> and the expression result 
written by the user.\n<strong>Note</strong> Execute expressions using 
javax.script.ScriptEngine.eval.</p>\n<h2>Create Task</h2>\n<p>Click Project 
-&gt; Management-Project -&gt; Name-Workflow Definition, and click the Create 
Workflow button to enter the DAG editing page.\nDrag from  [...]
   "link": "/dist/en-us/docs/dev/user_doc/guide/task/switch.html",
   "meta": {}
 }
\ No newline at end of file
diff --git a/img/metrics/metrics-datasource.png 
b/img/metrics/metrics-datasource.png
new file mode 100644
index 000000000..7bc96ddd4
Binary files /dev/null and b/img/metrics/metrics-datasource.png differ
diff --git a/img/metrics/metrics-master.png b/img/metrics/metrics-master.png
new file mode 100644
index 000000000..af8c44947
Binary files /dev/null and b/img/metrics/metrics-master.png differ
diff --git a/img/metrics/metrics-worker.png b/img/metrics/metrics-worker.png
new file mode 100644
index 000000000..a45fb93f1
Binary files /dev/null and b/img/metrics/metrics-worker.png differ
diff --git a/img/tasks/demo/switch_01.png b/img/tasks/demo/switch_01.png
new file mode 100644
index 000000000..c99c7edca
Binary files /dev/null and b/img/tasks/demo/switch_01.png differ
diff --git a/img/tasks/demo/switch_02.png b/img/tasks/demo/switch_02.png
new file mode 100644
index 000000000..48aa3edec
Binary files /dev/null and b/img/tasks/demo/switch_02.png differ
diff --git a/img/tasks/demo/switch_03.png b/img/tasks/demo/switch_03.png
new file mode 100644
index 000000000..d4509bac5
Binary files /dev/null and b/img/tasks/demo/switch_03.png differ
diff --git a/img/tasks/demo/switch_04.png b/img/tasks/demo/switch_04.png
new file mode 100644
index 000000000..57144049b
Binary files /dev/null and b/img/tasks/demo/switch_04.png differ
diff --git a/zh-cn/docs/dev/user_doc/architecture/configuration.html 
b/zh-cn/docs/dev/user_doc/architecture/configuration.html
index a34ada93c..f838ead1b 100644
--- a/zh-cn/docs/dev/user_doc/architecture/configuration.html
+++ b/zh-cn/docs/dev/user_doc/architecture/configuration.html
@@ -453,6 +453,11 @@
 <td>false</td>
 <td>是否处于开发模式</td>
 </tr>
+<tr>
+<td>task.resource.limit.state</td>
+<td>false</td>
+<td>是否启用资源限制模式</td>
+</tr>
 </tbody>
 </table>
 <h2>5.application-api.properties [API服务配置]</h2>
diff --git a/zh-cn/docs/dev/user_doc/architecture/configuration.json 
b/zh-cn/docs/dev/user_doc/architecture/configuration.json
index 5e41e0d3d..eb93baaeb 100644
--- a/zh-cn/docs/dev/user_doc/architecture/configuration.json
+++ b/zh-cn/docs/dev/user_doc/architecture/configuration.json
@@ -1,6 +1,6 @@
 {
   "filename": "configuration.md",
-  "__html": "<!-- markdown-link-check-disable 
-->\n<h1>前言</h1>\n<p>本文档为dolphinscheduler配置文件说明文档,针对版本为 dolphinscheduler-1.3.x 
版本.</p>\n<h1>目录结构</h1>\n<p>目前dolphinscheduler 所有的配置文件都在 [conf ] 
目录中.\n为了更直观的了解[conf]目录所在的位置以及包含的配置文件,请查看下面dolphinscheduler安装目录的简化说明.\n本文主要讲述dolphinscheduler的配置文件.其他部分先不做赘述.</p>\n<p>[注:以下
 dolphinscheduler 简称为DS.]</p>\n<pre><code>├── LICENSE\n│\n├── NOTICE\n│\n├── 
licenses                                    licenses存放目录\n│\n├── bin            
                         [...]
+  "__html": "<!-- markdown-link-check-disable 
-->\n<h1>前言</h1>\n<p>本文档为dolphinscheduler配置文件说明文档,针对版本为 dolphinscheduler-1.3.x 
版本.</p>\n<h1>目录结构</h1>\n<p>目前dolphinscheduler 所有的配置文件都在 [conf ] 
目录中.\n为了更直观的了解[conf]目录所在的位置以及包含的配置文件,请查看下面dolphinscheduler安装目录的简化说明.\n本文主要讲述dolphinscheduler的配置文件.其他部分先不做赘述.</p>\n<p>[注:以下
 dolphinscheduler 简称为DS.]</p>\n<pre><code>├── LICENSE\n│\n├── NOTICE\n│\n├── 
licenses                                    licenses存放目录\n│\n├── bin            
                         [...]
   "link": "/dist/zh-cn/docs/dev/user_doc/architecture/configuration.html",
   "meta": {}
 }
\ No newline at end of file
diff --git a/zh-cn/docs/dev/user_doc/guide/task/datax.html 
b/zh-cn/docs/dev/user_doc/guide/task/datax.html
index d4a3f123c..b5441b715 100644
--- a/zh-cn/docs/dev/user_doc/guide/task/datax.html
+++ b/zh-cn/docs/dev/user_doc/guide/task/datax.html
@@ -28,6 +28,8 @@
 <li>环境名称:配置运行脚本的环境。</li>
 <li>失败重试次数:任务失败重新提交的次数。</li>
 <li>失败重试间隔:任务失败重新提交任务的时间间隔,以分为单位。</li>
+<li>Cpu 配额: 
为执行的任务分配指定的CPU时间配额,单位百分比,默认-1代表不限制,例如1个核心的CPU满载是100%,16个核心的是1600%。这个功能由 <a 
href="../../architecture/configuration.md">task.resource.limit.state</a> 控制</li>
+<li>最大内存:为执行的任务分配指定的内存大小,超过会触发OOM被Kill同时不会进行自动重试,单位MB,默认-1代表不限制。这个功能由 <a 
href="../../architecture/configuration.md">task.resource.limit.state</a> 控制</li>
 <li>延时执行时间:任务延迟执行的时间,以分为单位。</li>
 <li>超时警告:勾选超时警告、超时失败,当任务超过“超时时长”后,会发送告警邮件并且任务执行失败。</li>
 <li>自定义模板:当默认提供的数据源不满足所需要求的时,可自定义 datax 节点的 json 配置文件内容。</li>
diff --git a/zh-cn/docs/dev/user_doc/guide/task/datax.json 
b/zh-cn/docs/dev/user_doc/guide/task/datax.json
index 4619ca34d..1bf558df9 100644
--- a/zh-cn/docs/dev/user_doc/guide/task/datax.json
+++ b/zh-cn/docs/dev/user_doc/guide/task/datax.json
@@ -1,6 +1,6 @@
 {
   "filename": "datax.md",
-  "__html": "<h1>DATAX 节点</h1>\n<h2>综述</h2>\n<p>DataX 任务类型,用于执行 DataX 程序。对于 
DataX 节点,worker 会通过执行 <code>${DATAX_HOME}/bin/datax.py</code> 来解析传入的 json 
文件。</p>\n<h2>创建任务</h2>\n<ul>\n<li>点击项目管理 -&gt; 项目名称 -&gt; 工作流定义,点击“创建工作流”按钮,进入 
DAG 编辑页面;</li>\n<li>拖动工具栏的<img src=\"/img/tasks/icons/datax.png\" 
width=\"15\"/> 
任务节点到画板中。</li>\n</ul>\n<h2>任务参数</h2>\n<ul>\n<li>节点名称:设置任务节点的名称。一个工作流定义中的节点名称是唯一的。</li>\n<li>运行标志:标识这个结点是否能正常调度,如果不需要执行,可以打开禁止执行开关。</li>\n<li>描述:描述该节点的功能。</li>\n<li>任务优先级:worker
 线程数不足 [...]
+  "__html": "<h1>DATAX 节点</h1>\n<h2>综述</h2>\n<p>DataX 任务类型,用于执行 DataX 程序。对于 
DataX 节点,worker 会通过执行 <code>${DATAX_HOME}/bin/datax.py</code> 来解析传入的 json 
文件。</p>\n<h2>创建任务</h2>\n<ul>\n<li>点击项目管理 -&gt; 项目名称 -&gt; 工作流定义,点击“创建工作流”按钮,进入 
DAG 编辑页面;</li>\n<li>拖动工具栏的<img src=\"/img/tasks/icons/datax.png\" 
width=\"15\"/> 
任务节点到画板中。</li>\n</ul>\n<h2>任务参数</h2>\n<ul>\n<li>节点名称:设置任务节点的名称。一个工作流定义中的节点名称是唯一的。</li>\n<li>运行标志:标识这个结点是否能正常调度,如果不需要执行,可以打开禁止执行开关。</li>\n<li>描述:描述该节点的功能。</li>\n<li>任务优先级:worker
 线程数不足 [...]
   "link": "/dist/zh-cn/docs/dev/user_doc/guide/task/datax.html",
   "meta": {}
 }
\ No newline at end of file
diff --git a/zh-cn/docs/dev/user_doc/guide/task/jupyter.html 
b/zh-cn/docs/dev/user_doc/guide/task/jupyter.html
index e15720825..5a465b8ac 100644
--- a/zh-cn/docs/dev/user_doc/guide/task/jupyter.html
+++ b/zh-cn/docs/dev/user_doc/guide/task/jupyter.html
@@ -34,7 +34,9 @@
 <li>Worker分组:任务分配给worker组的机器机执行,选择Default,会随机选择一台worker机执行。</li>
 <li>失败重试次数:任务失败重新提交的次数,支持下拉和手填。</li>
 <li>失败重试间隔:任务失败重新提交任务的时间间隔,支持下拉和手填。</li>
-<li>超时告警:勾选超时告警、超时失败,当任务超过&quot;超时时长&quot;后,会发送告警邮件并且任务执行失败.</li>
+<li>Cpu 配额: 
为执行的任务分配指定的CPU时间配额,单位百分比,默认-1代表不限制,例如1个核心的CPU满载是100%,16个核心的是1600%。</li>
+<li>最大内存:为执行的任务分配指定的内存大小,超过会触发OOM被Kill同时不会进行自动重试,单位MB,默认-1代表不限制。这个功能由 <a 
href="../../architecture/configuration.md">task.resource.limit.state</a> 控制</li>
+<li>超时告警:勾选超时告警、超时失败,当任务超过&quot;超时时长&quot;后,会发送告警邮件并且任务执行失败.这个功能由 <a 
href="../../architecture/configuration.md">task.resource.limit.state</a> 控制</li>
 <li>前置任务:选择当前任务的前置任务,会将被选择的前置任务设置为当前任务的上游。</li>
 <li>Conda Env Name: Conda环境名称。</li>
 <li>Input Note Path: 输入的jupyter note模板路径。</li>
diff --git a/zh-cn/docs/dev/user_doc/guide/task/jupyter.json 
b/zh-cn/docs/dev/user_doc/guide/task/jupyter.json
index e21ca7c33..418bf1f85 100644
--- a/zh-cn/docs/dev/user_doc/guide/task/jupyter.json
+++ b/zh-cn/docs/dev/user_doc/guide/task/jupyter.json
@@ -1,6 +1,6 @@
 {
   "filename": "jupyter.md",
-  "__html": 
"<h1>Jupyter</h1>\n<h2>Overview</h2>\n<p><code>Jupyter</code>任务类型,用于创建并执行<code>Jupyter</code>类型任务。worker
 执行该任务的时候,会通过<code>papermill</code>执行<code>jupyter note</code>。\n点击<a 
href=\"https://papermill.readthedocs.io/en/latest/\";>这里</a> 
获取更多关于<code>papermill</code>的信息。</p>\n<h2>Conda 
Configuration</h2>\n<ul>\n<li>在<code>common.properties</code>配置<code>conda.path</code>,将其指向您的<code>conda.sh</code>。这里的<code>conda</code>应该是您用来管理您的
 <code>papermill</code>和<code>jupyter</code>所在python [...]
+  "__html": 
"<h1>Jupyter</h1>\n<h2>Overview</h2>\n<p><code>Jupyter</code>任务类型,用于创建并执行<code>Jupyter</code>类型任务。worker
 执行该任务的时候,会通过<code>papermill</code>执行<code>jupyter note</code>。\n点击<a 
href=\"https://papermill.readthedocs.io/en/latest/\";>这里</a> 
获取更多关于<code>papermill</code>的信息。</p>\n<h2>Conda 
Configuration</h2>\n<ul>\n<li>在<code>common.properties</code>配置<code>conda.path</code>,将其指向您的<code>conda.sh</code>。这里的<code>conda</code>应该是您用来管理您的
 <code>papermill</code>和<code>jupyter</code>所在python [...]
   "link": "/dist/zh-cn/docs/dev/user_doc/guide/task/jupyter.html",
   "meta": {}
 }
\ No newline at end of file
diff --git a/zh-cn/docs/dev/user_doc/guide/task/python.html 
b/zh-cn/docs/dev/user_doc/guide/task/python.html
index b8cf06a4d..0acb098e8 100644
--- a/zh-cn/docs/dev/user_doc/guide/task/python.html
+++ b/zh-cn/docs/dev/user_doc/guide/task/python.html
@@ -29,6 +29,8 @@
 <li>环境名称:配置运行脚本的环境。</li>
 <li>失败重试次数:任务失败重新提交的次数,支持下拉和手填。</li>
 <li>失败重试间隔:任务失败重新提交任务的时间间隔,支持下拉和手填。</li>
+<li>Cpu 配额: 
为执行的任务分配指定的CPU时间配额,单位百分比,默认-1代表不限制,例如1个核心的CPU满载是100%,16个核心的是1600%。这个功能由 <a 
href="../../architecture/configuration.md">task.resource.limit.state</a> 控制</li>
+<li>最大内存:为执行的任务分配指定的内存大小,超过会触发OOM被Kill同时不会进行自动重试,单位MB,默认-1代表不限制。这个功能由 <a 
href="../../architecture/configuration.md">task.resource.limit.state</a> 控制</li>
 <li>超时告警:勾选超时告警、超时失败,当任务超过&quot;超时时长&quot;后,会发送告警邮件并且任务执行失败.</li>
 <li>脚本:用户开发的PYTHON程序。</li>
 <li>资源:是指脚本中需要调用的资源文件列表,资源中心-文件管理上传或创建的文件。</li>
diff --git a/zh-cn/docs/dev/user_doc/guide/task/python.json 
b/zh-cn/docs/dev/user_doc/guide/task/python.json
index b1624256f..12edbbacc 100644
--- a/zh-cn/docs/dev/user_doc/guide/task/python.json
+++ b/zh-cn/docs/dev/user_doc/guide/task/python.json
@@ -1,6 +1,6 @@
 {
   "filename": "python.md",
-  "__html": "<h1>Python 节点</h1>\n<h2>Overview</h2>\n<p>Python 任务类型,用于创建 Python 
类型的任务并执行一系列的 Python 脚本。worker 执行该任务的时候,会生成一个临时python脚本,\n并使用与租户同名的 linux 
用户执行这个脚本。</p>\n<h2>Create 
Task</h2>\n<ul>\n<li>点击项目管理-项目名称-工作流定义,点击&quot;创建工作流&quot;按钮,进入DAG编辑页面。</li>\n<li>工具栏中拖动
 <img src=\"/img/tasks/icons/python.png\" width=\"15\"/> 
到画板中,即可完成创建。</li>\n</ul>\n<h2>Task 
Parameter</h2>\n<ul>\n<li>任务名称:设置任务的名称。一个工作流定义中的节点名称是唯一的。</li>\n<li>运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。</li>\n<li>描述:描述该节点的功能。</li>
 [...]
+  "__html": "<h1>Python 节点</h1>\n<h2>Overview</h2>\n<p>Python 任务类型,用于创建 Python 
类型的任务并执行一系列的 Python 脚本。worker 执行该任务的时候,会生成一个临时python脚本,\n并使用与租户同名的 linux 
用户执行这个脚本。</p>\n<h2>Create 
Task</h2>\n<ul>\n<li>点击项目管理-项目名称-工作流定义,点击&quot;创建工作流&quot;按钮,进入DAG编辑页面。</li>\n<li>工具栏中拖动
 <img src=\"/img/tasks/icons/python.png\" width=\"15\"/> 
到画板中,即可完成创建。</li>\n</ul>\n<h2>Task 
Parameter</h2>\n<ul>\n<li>任务名称:设置任务的名称。一个工作流定义中的节点名称是唯一的。</li>\n<li>运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。</li>\n<li>描述:描述该节点的功能。</li>
 [...]
   "link": "/dist/zh-cn/docs/dev/user_doc/guide/task/python.html",
   "meta": {}
 }
\ No newline at end of file
diff --git a/zh-cn/docs/dev/user_doc/guide/task/shell.html 
b/zh-cn/docs/dev/user_doc/guide/task/shell.html
index d56020ad0..293fb807a 100644
--- a/zh-cn/docs/dev/user_doc/guide/task/shell.html
+++ b/zh-cn/docs/dev/user_doc/guide/task/shell.html
@@ -28,6 +28,8 @@
 <li>环境名称:配置运行脚本的环境。</li>
 <li>失败重试次数:任务失败重新提交的次数,支持下拉和手填。</li>
 <li>失败重试间隔:任务失败重新提交任务的时间间隔,支持下拉和手填。</li>
+<li>Cpu 配额: 
为执行的任务分配指定的CPU时间配额,单位百分比,默认-1代表不限制,例如1个核心的CPU满载是100%,16个核心的是1600%。这个功能由 <a 
href="../../architecture/configuration.md">task.resource.limit.state</a> 控制</li>
+<li>最大内存:为执行的任务分配指定的内存大小,超过会触发OOM被Kill同时不会进行自动重试,单位MB,默认-1代表不限制。这个功能由 <a 
href="../../architecture/configuration.md">task.resource.limit.state</a> 控制</li>
 <li>超时告警:勾选超时告警、超时失败,当任务超过&quot;超时时长&quot;后,会发送告警邮件并且任务执行失败.</li>
 <li>脚本:用户开发的 SHELL 程序。</li>
 <li>资源:是指脚本中需要调用的资源文件列表,资源中心-文件管理上传或创建的文件。</li>
diff --git a/zh-cn/docs/dev/user_doc/guide/task/shell.json 
b/zh-cn/docs/dev/user_doc/guide/task/shell.json
index 2e00ba07f..992bfd3e5 100644
--- a/zh-cn/docs/dev/user_doc/guide/task/shell.json
+++ b/zh-cn/docs/dev/user_doc/guide/task/shell.json
@@ -1,6 +1,6 @@
 {
   "filename": "shell.md",
-  "__html": "<h1>Shell</h1>\n<h2>综述</h2>\n<p>Shell 任务类型,用于创建 Shell 
类型的任务并执行一系列的 Shell 脚本。worker 执行该任务的时候,会生成一个临时 shell 脚本,并使用与租户同名的 linux 
用户执行这个脚本。</p>\n<h2>创建任务</h2>\n<ul>\n<li>点击项目管理-项目名称-工作流定义,点击&quot;创建工作流&quot;按钮,进入
 DAG 编辑页面。</li>\n<li>工具栏中拖动 <img src=\"/img/tasks/icons/shell.png\" 
width=\"15\"/> 
到画板中,即可完成创建。</li>\n</ul>\n<h2>任务参数</h2>\n<ul>\n<li>任务名称:设置任务的名称。一个工作流定义中的节点名称是唯一的。</li>\n<li>运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。</li>\n<li>描述:描述该节点的功能。</li>\n<li>任务优先级:worker
 线程数不足时,根据优先 [...]
+  "__html": "<h1>Shell</h1>\n<h2>综述</h2>\n<p>Shell 任务类型,用于创建 Shell 
类型的任务并执行一系列的 Shell 脚本。worker 执行该任务的时候,会生成一个临时 shell 脚本,并使用与租户同名的 linux 
用户执行这个脚本。</p>\n<h2>创建任务</h2>\n<ul>\n<li>点击项目管理-项目名称-工作流定义,点击&quot;创建工作流&quot;按钮,进入
 DAG 编辑页面。</li>\n<li>工具栏中拖动 <img src=\"/img/tasks/icons/shell.png\" 
width=\"15\"/> 
到画板中,即可完成创建。</li>\n</ul>\n<h2>任务参数</h2>\n<ul>\n<li>任务名称:设置任务的名称。一个工作流定义中的节点名称是唯一的。</li>\n<li>运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。</li>\n<li>描述:描述该节点的功能。</li>\n<li>任务优先级:worker
 线程数不足时,根据优先 [...]
   "link": "/dist/zh-cn/docs/dev/user_doc/guide/task/shell.html",
   "meta": {}
 }
\ No newline at end of file
diff --git a/zh-cn/docs/dev/user_doc/guide/task/switch.html 
b/zh-cn/docs/dev/user_doc/guide/task/switch.html
index 5b1a24ba6..4d8f264a0 100644
--- a/zh-cn/docs/dev/user_doc/guide/task/switch.html
+++ b/zh-cn/docs/dev/user_doc/guide/task/switch.html
@@ -11,37 +11,45 @@
 </head>
 <body>
   <div id="root"><div class="md2html docs-page" data-reactroot=""><header 
class="header-container header-container-dark"><div class="banner-tips"><div>🤔 
有关于 Apache DolphinScheduler 的疑问,加入 Slack 频道来讨论他们 <a class="link-tips" 
href="https://s.apache.org/dolphinscheduler-slack";>join #dolphinscheduler 
channel</a>! 🌟</div></div><div class="header-body"><span class="mobile-menu-btn 
mobile-menu-btn-dark"></span><a href="/zh-cn/index.html"><img class="logo" 
src="/img/hlogo_white.svg"/></a><div cla [...]
-<p>Switch是一个条件判断节点,依据<a 
href="../parameter/global.md">全局变量</a>的值和用户所编写的表达式判断结果执行对应分支。</p>
+<p>Switch 是一个条件判断节点,依据<a 
href="../parameter/global.md">全局变量</a>的值和用户所编写的表达式判断结果执行对应分支。
+<strong>注意</strong>使用 javax.script.ScriptEngine.eval 执行表达式。</p>
 <h2>创建任务</h2>
-<p>拖动工具栏中的<img src="/img/switch.png" 
width="20"/>任务节点到画板中即能完成任务创建,<strong>注意</strong>switch任务创建后,要先配置上下游,才能配置任务分支的参数</p>
+<p>点击项目管理 -&gt; 项目名称 -&gt; 工作流定义,点击&quot;创建工作流&quot;按钮,进入 DAG 编辑页面。
+拖动工具栏中的 <img src="/img/switch.png" width="20"/> 任务节点到画板中即能完成任务创建。
+<strong>注意</strong> switch 任务创建后,要先配置上下游,才能配置任务分支的参数。</p>
 <h2>任务参数</h2>
 <ul>
 <li>节点名称:一个工作流定义中的节点名称是唯一的。</li>
 <li>运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。</li>
 <li>描述信息:描述该节点的功能。</li>
-<li>任务优先级:worker线程数不足时,根据优先级从高到低依次执行,优先级一样时根据先进先出原则执行。</li>
-<li>Worker分组:任务分配给worker组的机器机执行,选择Default,会随机选择一台worker机执行。</li>
+<li>任务优先级:worker 线程数不足时,根据优先级从高到低依次执行,优先级一样时根据先进先出原则执行。</li>
+<li>Worker 分组:任务分配给 worker 组的机器机执行,选择 Default,会随机选择一台 worker 机执行。</li>
+<li>环境名称:安全中心中配置的环境,不配置则不使用。</li>
+<li>任务组名称:资源中心中配置的任务组,不配置则不使用。</li>
 <li>失败重试次数:任务失败重新提交的次数,支持下拉和手填。</li>
 <li>失败重试间隔:任务失败重新提交任务的时间间隔,支持下拉和手填。</li>
-<li>超时告警:勾选超时告警、超时失败,当任务超过&quot;超时时长&quot;后,会发送告警邮件并且任务执行失败.</li>
-<li>条件:可以为switch任务配置多个条件,当条件满足时,就会执行指定的分支,可以配置多个不同的条件来满足不同的业务</li>
-<li>分支流转:默认的流转内容,当<strong>条件</strong>中的内容为全部不符合要求时,则运行<strong>分支流转</strong>中指定的分支</li>
+<li>延时执行时间:任务延迟执行的时间。</li>
+<li>超时告警:勾选超时告警、超时失败,当任务超过&quot;超时时长&quot;后,会发送告警邮件并且任务执行失败。</li>
+<li>条件:可以为 switch 
任务配置多个条件,当条件满足时,就会执行指定的分支,可以配置多个不同的条件来满足不同的业务,使用字符串判断时需要使用&quot;&quot;。</li>
+<li>分支流转:默认的流转内容,当<strong>条件</strong>中的内容为全部不符合要求时,则运行<strong>分支流转</strong>中指定的分支。</li>
 </ul>
-<h2>详细流程</h2>
-<p>假设我们三个任务,其依赖关系是 <code>A -&gt; B -&gt; [C, D]</code> 
其中task_a是shell任务,task_b是switch任务</p>
-<ul>
-<li>任务A中通过<a 
href="../parameter/global.md">全局变量</a>定义了名为<code>id</code>的全局变量,声明方式为<code>${setValue(id=1)}</code></li>
-<li>任务B增加条件,使用上游声明的全局变量实现条件判断(注意:只要直接、非直接上游在switch运行前对全局变量赋值,switch运行时就可以获取该全局变量)。下面我们想要实现当id为1时,运行任务C,其他运行任务D
-<ul>
-<li>配置当全局变量<code>id=1</code>时,运行任务C。则在任务B的条件中编辑<code>${id} == 
1</code>,分支流转选择<code>C</code></li>
-<li>对于其他任务,在分支流转中选择<code>D</code></li>
-</ul>
-</li>
-</ul>
-<p>最终switch任务的配置如下</p>
-<p><img src="/img/switch_configure.jpg" alt="task-switch-configure"></p>
-<h2>相关任务</h2>
-<p><a href="conditions.md">condition</a>:<a 
href="conditions.md">Condition</a>节点主要依据上游节点的执行状态(成功、失败)执行对应分支。Switch节点主要依据全局变量的值和用户所编写的表达式判断结果执行对应分支</p>
+<h2>任务样例</h2>
+<p>这里使用一个 switch 任务以及三个 shell 任务来演示。</p>
+<h3>创建工作流</h3>
+<p>新建 switch 任务,以及下游的三个 shell 任务。shell 任务没有要求。
+switch 任务需要和下游任务连线配置关系后,才可以进行下游任务的选择。</p>
+<p><img src="/img/tasks/demo/switch_01.png" alt="switch_01"></p>
+<h3>设置条件</h3>
+<p>配置条件和默认分支,满足条件会走指定分支,都不满足则走默认分支。
+图中如果变量的值为 &quot;A&quot; 则执行分支 taskA,如果变量的值为 &quot;B&quot; 则执行分支 taskB ,都不满足则执行 
default。</p>
+<p><img src="/img/tasks/demo/switch_02.png" alt="switch_02"></p>
+<p>条件使用了全局变量,请参考<a href="../parameter/global.md">全局变量</a>。
+这里配置全局变量的值为 A。</p>
+<p><img src="/img/tasks/demo/switch_03.png" alt="switch_03"></p>
+<p>如果执行正确,那么 taskA 会被正确执行。</p>
+<h3>执行</h3>
+<p>执行,并且查看是否符合预期。可以看到符合预期,执行了指定的下游任务 taskA。</p>
+<p><img src="/img/tasks/demo/switch_04.png" alt="switch_04"></p>
 </div></section><footer class="footer-container"><div 
class="footer-body"><div><h3>联系我们</h3><h4>有问题需要反馈?请通过以下方式联系我们。</h4></div><div 
class="contact-container"><ul><li><a 
href="/zh-cn/community/development/subscribe.html"><img class="img-base" 
src="/img/emailgray.png"/><img class="img-change" 
src="/img/emailblue.png"/><p>邮件列表</p></a></li><li><a 
href="https://twitter.com/dolphinschedule";><img class="img-base" 
src="/img/twittergray.png"/><img class="img-change" 
src="/img/twitterblue.png"/><p [...]
   <script src="/asset/js/react/react-with-addons.min.js"></script>
   <script src="/asset/js/react/react-dom.min.js"></script>
diff --git a/zh-cn/docs/dev/user_doc/guide/task/switch.json 
b/zh-cn/docs/dev/user_doc/guide/task/switch.json
index ae3f2bfd9..b16cf0e3e 100644
--- a/zh-cn/docs/dev/user_doc/guide/task/switch.json
+++ b/zh-cn/docs/dev/user_doc/guide/task/switch.json
@@ -1,6 +1,6 @@
 {
   "filename": "switch.md",
-  "__html": "<h1>Switch</h1>\n<p>Switch是一个条件判断节点,依据<a 
href=\"../parameter/global.md\">全局变量</a>的值和用户所编写的表达式判断结果执行对应分支。</p>\n<h2>创建任务</h2>\n<p>拖动工具栏中的<img
 src=\"/img/switch.png\" 
width=\"20\"/>任务节点到画板中即能完成任务创建,<strong>注意</strong>switch任务创建后,要先配置上下游,才能配置任务分支的参数</p>\n<h2>任务参数</h2>\n<ul>\n<li>节点名称:一个工作流定义中的节点名称是唯一的。</li>\n<li>运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执行开关。</li>\n<li>描述信息:描述该节点的功能。</li>\n<li>任务优先级:worker线程数不足时,根据优先级从高到低依次执行,优先级一样时根据先进先出原则执行。</li>\n<li>Worker分组:任务分配给worker组的机器机执行,选择Defa
 [...]
+  "__html": "<h1>Switch</h1>\n<p>Switch 是一个条件判断节点,依据<a 
href=\"../parameter/global.md\">全局变量</a>的值和用户所编写的表达式判断结果执行对应分支。\n<strong>注意</strong>使用
 javax.script.ScriptEngine.eval 执行表达式。</p>\n<h2>创建任务</h2>\n<p>点击项目管理 -&gt; 项目名称 
-&gt; 工作流定义,点击&quot;创建工作流&quot;按钮,进入 DAG 编辑页面。\n拖动工具栏中的 <img 
src=\"/img/switch.png\" width=\"20\"/> 任务节点到画板中即能完成任务创建。\n<strong>注意</strong> 
switch 
任务创建后,要先配置上下游,才能配置任务分支的参数。</p>\n<h2>任务参数</h2>\n<ul>\n<li>节点名称:一个工作流定义中的节点名称是唯一的。</li>\n<li>运行标志:标识这个节点是否能正常调度,如果不需要执行,可以打开禁止执
 [...]
   "link": "/dist/zh-cn/docs/dev/user_doc/guide/task/switch.html",
   "meta": {}
 }
\ No newline at end of file

Reply via email to