diff --git a/liteflow-benchmark/liteflow-benchmark-script-groovy/pom.xml b/liteflow-benchmark/liteflow-benchmark-script-groovy/pom.xml
new file mode 100644
index 000000000..b2e0ea09a
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-groovy/pom.xml
@@ -0,0 +1,24 @@
+
+
+
+ liteflow-benchmark
+ com.yomahub
+ ${revision}
+ ../pom.xml
+
+ 4.0.0
+
+ liteflow-benchmark-script-groovy
+
+
+
+ com.yomahub
+ liteflow-script-groovy
+ ${revision}
+ test
+
+
+
+
\ No newline at end of file
diff --git a/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/java/com/yomahub/liteflow/benchmark/ScriptGroovyBenchmark.java b/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/java/com/yomahub/liteflow/benchmark/ScriptGroovyBenchmark.java
new file mode 100644
index 000000000..77bf63be0
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/java/com/yomahub/liteflow/benchmark/ScriptGroovyBenchmark.java
@@ -0,0 +1,76 @@
+package com.yomahub.liteflow.benchmark;
+
+import cn.hutool.core.io.resource.ResourceUtil;
+import cn.hutool.core.util.StrUtil;
+import com.yomahub.liteflow.builder.LiteFlowNodeBuilder;
+import com.yomahub.liteflow.builder.el.LiteFlowChainELBuilder;
+import com.yomahub.liteflow.core.FlowExecutor;
+import com.yomahub.liteflow.flow.FlowBus;
+import org.openjdk.jmh.annotations.*;
+import org.openjdk.jmh.runner.Runner;
+import org.openjdk.jmh.runner.RunnerException;
+import org.openjdk.jmh.runner.options.Options;
+import org.openjdk.jmh.runner.options.OptionsBuilder;
+import org.openjdk.jmh.runner.options.TimeValue;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
+import org.springframework.context.ConfigurableApplicationContext;
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.PropertySource;
+
+import java.util.concurrent.TimeUnit;
+
+@State(Scope.Benchmark)
+@EnableAutoConfiguration
+@PropertySource(value = "classpath:application.properties")
+@ComponentScan("com.yomahub.liteflow.benchmark.cmp")
+public class ScriptGroovyBenchmark {
+
+ private ConfigurableApplicationContext applicationContext;
+
+ private FlowExecutor flowExecutor;
+
+ @Setup
+ public void setup() {
+ applicationContext = SpringApplication.run(ScriptGroovyBenchmark.class);
+ flowExecutor = applicationContext.getBean(FlowExecutor.class);
+ }
+
+ @TearDown
+ public void tearDown() {
+ applicationContext.close();
+ }
+
+ //普通执行
+ @Benchmark
+ public void test1(){
+ flowExecutor.execute2Resp("chain1");
+ }
+
+ //LF动态创建组件和规则,并执行
+ @Benchmark
+ public void test2(){
+ String scriptContent = ResourceUtil.readUtf8Str("classpath:script.groovy");
+ LiteFlowNodeBuilder.createScriptNode().setId("ds").setScript(scriptContent).build();
+
+ if(!FlowBus.containChain("chain2")){
+ LiteFlowChainELBuilder.createChain().setChainId("chain2").setEL("THEN(ds)").build();
+ }
+ flowExecutor.execute2Resp("chain2");
+ }
+
+
+ public static void main(String[] args) throws RunnerException {
+ Options opt = new OptionsBuilder()
+ .include(ScriptGroovyBenchmark.class.getSimpleName())
+ .mode(Mode.Throughput)
+ .warmupIterations(1)//预热次数
+ .measurementIterations(3)//执行次数
+ .measurementTime(new TimeValue(10, TimeUnit.SECONDS))//每次执行多少时间
+ .threads(100)//多少个线程
+ .forks(1)//多少个进程
+ .timeUnit(TimeUnit.SECONDS)
+ .build();
+ new Runner(opt).run();
+ }
+}
diff --git a/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/java/com/yomahub/liteflow/benchmark/cmp/ACmp.java b/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/java/com/yomahub/liteflow/benchmark/cmp/ACmp.java
new file mode 100644
index 000000000..8c9d02813
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/java/com/yomahub/liteflow/benchmark/cmp/ACmp.java
@@ -0,0 +1,20 @@
+/**
+ *
Title: liteflow
+ * Description: 轻量级的组件式流程框架
+ * @author Bryan.Zhang
+ * @email weenyc31@163.com
+ * @Date 2020/4/1
+ */
+package com.yomahub.liteflow.benchmark.cmp;
+
+import com.yomahub.liteflow.annotation.LiteflowComponent;
+import com.yomahub.liteflow.core.NodeComponent;
+
+@LiteflowComponent("a")
+public class ACmp extends NodeComponent {
+
+ @Override
+ public void process() {
+ }
+
+}
diff --git a/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/java/com/yomahub/liteflow/benchmark/cmp/BCmp.java b/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/java/com/yomahub/liteflow/benchmark/cmp/BCmp.java
new file mode 100644
index 000000000..1dc6a517f
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/java/com/yomahub/liteflow/benchmark/cmp/BCmp.java
@@ -0,0 +1,20 @@
+/**
+ * Title: liteflow
+ * Description: 轻量级的组件式流程框架
+ * @author Bryan.Zhang
+ * @email weenyc31@163.com
+ * @Date 2020/4/1
+ */
+package com.yomahub.liteflow.benchmark.cmp;
+
+import com.yomahub.liteflow.annotation.LiteflowComponent;
+import com.yomahub.liteflow.core.NodeComponent;
+
+@LiteflowComponent("b")
+public class BCmp extends NodeComponent {
+
+ @Override
+ public void process() {
+ }
+
+}
diff --git a/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/java/com/yomahub/liteflow/benchmark/cmp/CCmp.java b/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/java/com/yomahub/liteflow/benchmark/cmp/CCmp.java
new file mode 100644
index 000000000..95ee9b80c
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/java/com/yomahub/liteflow/benchmark/cmp/CCmp.java
@@ -0,0 +1,20 @@
+/**
+ * Title: liteflow
+ * Description: 轻量级的组件式流程框架
+ * @author Bryan.Zhang
+ * @email weenyc31@163.com
+ * @Date 2020/4/1
+ */
+package com.yomahub.liteflow.benchmark.cmp;
+
+import com.yomahub.liteflow.annotation.LiteflowComponent;
+import com.yomahub.liteflow.core.NodeComponent;
+
+@LiteflowComponent("c")
+public class CCmp extends NodeComponent {
+
+ @Override
+ public void process() {
+ }
+
+}
diff --git a/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/java/com/yomahub/liteflow/benchmark/cmp/TestDomain.java b/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/java/com/yomahub/liteflow/benchmark/cmp/TestDomain.java
new file mode 100644
index 000000000..372571b11
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/java/com/yomahub/liteflow/benchmark/cmp/TestDomain.java
@@ -0,0 +1,13 @@
+package com.yomahub.liteflow.benchmark.cmp;
+
+import org.springframework.stereotype.Component;
+
+
+@Component
+public class TestDomain {
+
+ public String sayHello(String name){
+ return "hello," + name;
+ }
+
+}
diff --git a/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/resources/application.properties b/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/resources/application.properties
new file mode 100644
index 000000000..970b6d155
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/resources/application.properties
@@ -0,0 +1,3 @@
+liteflow.rule-source=flow.xml
+liteflow.print-execution-log=false
+liteflow.script-setting.javax-is-cache=false
\ No newline at end of file
diff --git a/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/resources/flow.xml b/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/resources/flow.xml
new file mode 100644
index 000000000..ee2649be2
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/resources/flow.xml
@@ -0,0 +1,55 @@
+
+
+
+
+
+ list = ListUtil.toList("a", "b", "c")
+
+ List resultList = list.stream().map(s -> "hello," + s).collect(Collectors.toList())
+
+ defaultContext.setData("resultList", resultList)
+
+ class Student {
+ int studentID
+ String studentName
+ }
+
+ Student student = new Student()
+ student.studentID = 100301
+ student.studentName = "张三"
+ defaultContext.setData("student", student)
+
+ def a = 3
+ def b = 2
+ defaultContext.setData("s1", a * b)
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+
+ THEN(FOR(s2).DO(THEN(a, b, c, s1)), SWITCH(s3).TO(a,b));
+
+
\ No newline at end of file
diff --git a/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/resources/script.groovy b/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/resources/script.groovy
new file mode 100644
index 000000000..aa5bcc4f2
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-groovy/src/test/resources/script.groovy
@@ -0,0 +1,29 @@
+import cn.hutool.core.collection.ListUtil
+import cn.hutool.core.date.DateUtil
+
+import java.util.function.Consumer
+import java.util.function.Function
+import java.util.stream.Collectors
+
+def date = DateUtil.parse("2022-10-17 13:31:43")
+defaultContext.setData("demoDate", date)
+
+List list = ListUtil.toList("a", "b", "c")
+
+List resultList = list.stream().map(s -> "hello," + s).collect(Collectors.toList())
+
+defaultContext.setData("resultList", resultList)
+
+class Student {
+ int studentID
+ String studentName
+}
+
+Student student = new Student()
+student.studentID = 100301
+student.studentName = "张三"
+defaultContext.setData("student", student)
+
+def a = 3
+def b = 2
+defaultContext.setData("s1", a * b)
\ No newline at end of file
diff --git a/liteflow-benchmark/liteflow-benchmark-script-java/pom.xml b/liteflow-benchmark/liteflow-benchmark-script-java/pom.xml
new file mode 100644
index 000000000..139f0c987
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-java/pom.xml
@@ -0,0 +1,24 @@
+
+
+
+ liteflow-benchmark
+ com.yomahub
+ ${revision}
+ ../pom.xml
+
+ 4.0.0
+
+ liteflow-benchmark-script-java
+
+
+
+ com.yomahub
+ liteflow-script-java
+ ${revision}
+ test
+
+
+
+
\ No newline at end of file
diff --git a/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/ScriptJavaBenchmark.java b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/ScriptJavaBenchmark.java
new file mode 100644
index 000000000..607b40bac
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/ScriptJavaBenchmark.java
@@ -0,0 +1,76 @@
+package com.yomahub.liteflow.benchmark;
+
+import cn.hutool.core.io.resource.ResourceUtil;
+import cn.hutool.core.util.StrUtil;
+import com.yomahub.liteflow.builder.LiteFlowNodeBuilder;
+import com.yomahub.liteflow.builder.el.LiteFlowChainELBuilder;
+import com.yomahub.liteflow.core.FlowExecutor;
+import com.yomahub.liteflow.flow.FlowBus;
+import org.openjdk.jmh.annotations.*;
+import org.openjdk.jmh.runner.Runner;
+import org.openjdk.jmh.runner.RunnerException;
+import org.openjdk.jmh.runner.options.Options;
+import org.openjdk.jmh.runner.options.OptionsBuilder;
+import org.openjdk.jmh.runner.options.TimeValue;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
+import org.springframework.context.ConfigurableApplicationContext;
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.PropertySource;
+
+import java.util.concurrent.TimeUnit;
+
+@State(Scope.Benchmark)
+@EnableAutoConfiguration
+@PropertySource(value = "classpath:application.properties")
+@ComponentScan("com.yomahub.liteflow.benchmark.cmp")
+public class ScriptJavaBenchmark {
+
+ private ConfigurableApplicationContext applicationContext;
+
+ private FlowExecutor flowExecutor;
+
+ @Setup
+ public void setup() {
+ applicationContext = SpringApplication.run(ScriptJavaBenchmark.class);
+ flowExecutor = applicationContext.getBean(FlowExecutor.class);
+ }
+
+ @TearDown
+ public void tearDown() {
+ applicationContext.close();
+ }
+
+ //普通执行
+ @Benchmark
+ public void test1(){
+ flowExecutor.execute2Resp("chain1");
+ }
+
+ //LF动态创建组件和规则,并执行
+ @Benchmark
+ public void test2(){
+ String scriptContent = ResourceUtil.readUtf8Str("classpath:javaScript.java");
+ LiteFlowNodeBuilder.createScriptNode().setId("ds").setScript(scriptContent).build();
+
+ if(!FlowBus.containChain("chain2")){
+ LiteFlowChainELBuilder.createChain().setChainId("chain2").setEL("THEN(ds)").build();
+ }
+ flowExecutor.execute2Resp("chain2");
+ }
+
+
+ public static void main(String[] args) throws RunnerException {
+ Options opt = new OptionsBuilder()
+ .include(ScriptJavaBenchmark.class.getSimpleName())
+ .mode(Mode.Throughput)
+ .warmupIterations(1)//预热次数
+ .measurementIterations(3)//执行次数
+ .measurementTime(new TimeValue(10, TimeUnit.SECONDS))//每次执行多少时间
+ .threads(300)//多少个线程
+ .forks(1)//多少个进程
+ .timeUnit(TimeUnit.SECONDS)
+ .build();
+ new Runner(opt).run();
+ }
+}
diff --git a/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/ACmp.java b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/ACmp.java
new file mode 100644
index 000000000..8c9d02813
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/ACmp.java
@@ -0,0 +1,20 @@
+/**
+ * Title: liteflow
+ * Description: 轻量级的组件式流程框架
+ * @author Bryan.Zhang
+ * @email weenyc31@163.com
+ * @Date 2020/4/1
+ */
+package com.yomahub.liteflow.benchmark.cmp;
+
+import com.yomahub.liteflow.annotation.LiteflowComponent;
+import com.yomahub.liteflow.core.NodeComponent;
+
+@LiteflowComponent("a")
+public class ACmp extends NodeComponent {
+
+ @Override
+ public void process() {
+ }
+
+}
diff --git a/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/BCmp.java b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/BCmp.java
new file mode 100644
index 000000000..1dc6a517f
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/BCmp.java
@@ -0,0 +1,20 @@
+/**
+ * Title: liteflow
+ * Description: 轻量级的组件式流程框架
+ * @author Bryan.Zhang
+ * @email weenyc31@163.com
+ * @Date 2020/4/1
+ */
+package com.yomahub.liteflow.benchmark.cmp;
+
+import com.yomahub.liteflow.annotation.LiteflowComponent;
+import com.yomahub.liteflow.core.NodeComponent;
+
+@LiteflowComponent("b")
+public class BCmp extends NodeComponent {
+
+ @Override
+ public void process() {
+ }
+
+}
diff --git a/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/CCmp.java b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/CCmp.java
new file mode 100644
index 000000000..95ee9b80c
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/CCmp.java
@@ -0,0 +1,20 @@
+/**
+ * Title: liteflow
+ * Description: 轻量级的组件式流程框架
+ * @author Bryan.Zhang
+ * @email weenyc31@163.com
+ * @Date 2020/4/1
+ */
+package com.yomahub.liteflow.benchmark.cmp;
+
+import com.yomahub.liteflow.annotation.LiteflowComponent;
+import com.yomahub.liteflow.core.NodeComponent;
+
+@LiteflowComponent("c")
+public class CCmp extends NodeComponent {
+
+ @Override
+ public void process() {
+ }
+
+}
diff --git a/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/DCmp.java b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/DCmp.java
new file mode 100644
index 000000000..d78b2ea33
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/DCmp.java
@@ -0,0 +1,23 @@
+/**
+ * Title: liteflow
+ * Description: 轻量级的组件式流程框架
+ * @author Bryan.Zhang
+ * @email weenyc31@163.com
+ * @Date 2020/4/1
+ */
+package com.yomahub.liteflow.benchmark.cmp;
+
+import com.yomahub.liteflow.annotation.LiteflowComponent;
+import com.yomahub.liteflow.core.NodeComponent;
+import com.yomahub.liteflow.slot.DefaultContext;
+
+@LiteflowComponent("d")
+public class DCmp extends NodeComponent {
+
+ @Override
+ public void process() {
+ DefaultContext context = this.getFirstContextBean();
+ context.setData("count", 198);
+ }
+
+}
diff --git a/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/Person.java b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/Person.java
new file mode 100644
index 000000000..be665958d
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/Person.java
@@ -0,0 +1,28 @@
+package com.yomahub.liteflow.benchmark.cmp;
+
+public class Person {
+ private String name;
+
+ private Integer salary;
+
+ public Person(String name, Integer salary) {
+ this.name = name;
+ this.salary = salary;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public Integer getSalary() {
+ return salary;
+ }
+
+ public void setSalary(Integer salary) {
+ this.salary = salary;
+ }
+}
diff --git a/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/TestDomain.java b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/TestDomain.java
new file mode 100644
index 000000000..bbd999956
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/java/com/yomahub/liteflow/benchmark/cmp/TestDomain.java
@@ -0,0 +1,25 @@
+package com.yomahub.liteflow.benchmark.cmp;
+
+import cn.hutool.core.collection.ListUtil;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+@Component
+public class TestDomain {
+
+ public String sayHello(String name){
+ return "hello," + name;
+ }
+
+ public static void main(String[] args) {
+ List personList = ListUtil.toList(
+ new Person("jack", 15000),
+ new Person("tom", 13500),
+ new Person("peter", 18600)
+ );
+
+ int totalSalary = personList.stream().mapToInt(Person::getSalary).sum();
+ System.out.println(totalSalary);
+ }
+}
diff --git a/liteflow-benchmark/liteflow-benchmark-script-java/src/test/resources/application.properties b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/resources/application.properties
new file mode 100644
index 000000000..970b6d155
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/resources/application.properties
@@ -0,0 +1,3 @@
+liteflow.rule-source=flow.xml
+liteflow.print-execution-log=false
+liteflow.script-setting.javax-is-cache=false
\ No newline at end of file
diff --git a/liteflow-benchmark/liteflow-benchmark-script-java/src/test/resources/flow.xml b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/resources/flow.xml
new file mode 100644
index 000000000..210ff5ba6
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/resources/flow.xml
@@ -0,0 +1,60 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ THEN(FOR(s2).DO(THEN(a, b, c, s1)), SWITCH(s3).TO(a,b));
+
+
\ No newline at end of file
diff --git a/liteflow-benchmark/liteflow-benchmark-script-java/src/test/resources/javaScript.java b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/resources/javaScript.java
new file mode 100644
index 000000000..527822ebc
--- /dev/null
+++ b/liteflow-benchmark/liteflow-benchmark-script-java/src/test/resources/javaScript.java
@@ -0,0 +1,20 @@
+import com.yomahub.liteflow.benchmark.cmp.TestDomain;
+import com.yomahub.liteflow.slot.DefaultContext;
+import com.yomahub.liteflow.spi.holder.ContextAwareHolder;
+import com.yomahub.liteflow.script.body.JaninoCommonScriptBody;
+import com.yomahub.liteflow.script.ScriptExecuteWrap;
+
+public class Demo implements JaninoCommonScriptBody {
+ public Void body(ScriptExecuteWrap wrap) {
+ int v1 = 2;
+ int v2 = 3;
+ DefaultContext ctx = (DefaultContext) wrap.getCmp().getFirstContextBean();
+ ctx.setData("s1", v1 * v2);
+
+ TestDomain domain = (TestDomain) ContextAwareHolder.loadContextAware().getBean(TestDomain.class);
+ String str = domain.sayHello("jack");
+ ctx.setData("hi", str);
+
+ return null;
+ }
+}
\ No newline at end of file
diff --git a/liteflow-benchmark/liteflow-benchmark-script-javax/src/test/java/com/yomahub/liteflow/benchmark/ScriptJavaxBenchmark.java b/liteflow-benchmark/liteflow-benchmark-script-javax/src/test/java/com/yomahub/liteflow/benchmark/ScriptJavaxBenchmark.java
index 209feaf6d..02a8e52f3 100644
--- a/liteflow-benchmark/liteflow-benchmark-script-javax/src/test/java/com/yomahub/liteflow/benchmark/ScriptJavaxBenchmark.java
+++ b/liteflow-benchmark/liteflow-benchmark-script-javax/src/test/java/com/yomahub/liteflow/benchmark/ScriptJavaxBenchmark.java
@@ -1,6 +1,7 @@
package com.yomahub.liteflow.benchmark;
import cn.hutool.core.io.resource.ResourceUtil;
+import cn.hutool.core.util.StrUtil;
import com.yomahub.liteflow.builder.LiteFlowNodeBuilder;
import com.yomahub.liteflow.builder.el.LiteFlowChainELBuilder;
import com.yomahub.liteflow.core.FlowExecutor;
@@ -68,7 +69,7 @@ public class ScriptJavaxBenchmark {
.warmupIterations(1)//预热次数
.measurementIterations(3)//执行次数
.measurementTime(new TimeValue(10, TimeUnit.SECONDS))//每次执行多少时间
- .threads(300)//多少个线程
+ .threads(100)//多少个线程
.forks(1)//多少个进程
.timeUnit(TimeUnit.SECONDS)
.build();
diff --git a/liteflow-benchmark/pom.xml b/liteflow-benchmark/pom.xml
index 7d92fb1b9..2cef30800 100644
--- a/liteflow-benchmark/pom.xml
+++ b/liteflow-benchmark/pom.xml
@@ -44,6 +44,9 @@
liteflow-benchmark-script-javax
+ liteflow-benchmark-script-java
+ liteflow-benchmark-script-groovy
+ liteflow-benchmark-script-kotlin