Skip to content

Commit 4f5c8b6

Browse files
committed
[waterflow] waterflow性能优化回合
1 parent 233d9f8 commit 4f5c8b6

File tree

4 files changed

+53
-10
lines changed

4 files changed

+53
-10
lines changed

app-builder/jane/plugins/aipp-plugin/src/main/java/modelengine/fit/jober/aipp/service/impl/AppChatServiceImpl.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
import static modelengine.fit.jober.aipp.constants.AippConst.BUSINESS_INFOS_KEY;
1313
import static modelengine.fit.jober.aipp.constants.AippConst.BUSINESS_INPUT_KEY;
1414
import static modelengine.fit.jober.aipp.enums.AppTypeEnum.APP;
15-
import static modelengine.fit.jober.aipp.service.impl.AippRunTimeServiceImpl.getMetaByAppId;
1615

1716
import modelengine.fit.jade.waterflow.FlowsService;
1817
import modelengine.fit.jane.common.entity.OperationContext;
@@ -41,7 +40,12 @@
4140
import modelengine.fit.jober.aipp.service.AippLogService;
4241
import modelengine.fit.jober.aipp.service.AippRunTimeService;
4342
import modelengine.fit.jober.aipp.service.AppChatService;
44-
import modelengine.fit.jober.aipp.util.*;
43+
import modelengine.fit.jober.aipp.util.AippLogUtils;
44+
import modelengine.fit.jober.aipp.util.AppUtils;
45+
import modelengine.fit.jober.aipp.util.CacheUtils;
46+
import modelengine.fit.jober.aipp.util.FlowUtils;
47+
import modelengine.fit.jober.aipp.util.JsonUtils;
48+
import modelengine.fit.jober.aipp.util.UUIDUtil;
4549
import modelengine.fit.jober.common.ServerInternalException;
4650
import modelengine.fitframework.annotation.Component;
4751
import modelengine.fitframework.annotation.Value;
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
/*---------------------------------------------------------------------------------------------
2+
* Copyright (c) 2025 Huawei Technologies Co., Ltd. All rights reserved.
3+
* This file is a part of the ModelEngine Project.
4+
* Licensed under the MIT License. See License.txt in the project root for license information.
5+
*--------------------------------------------------------------------------------------------*/
6+
7+
package modelengine.fit.waterflow.common.utils;
8+
9+
import java.util.UUID;
10+
import java.util.concurrent.ThreadLocalRandom;
11+
12+
/**
13+
* Uuid的Utils类。
14+
*
15+
* @author 孙怡菲
16+
* @since 1.0
17+
*/
18+
public class UUIDUtil {
19+
/**
20+
* 随机生成uuid。
21+
*
22+
* @return 随机生成的uuid的 {@link String}。
23+
*/
24+
public static String uuid() {
25+
return UUID.randomUUID().toString().replace("-", "");
26+
}
27+
28+
/**
29+
* 使用线程本地随机数生成UUID。
30+
* 生成的 UUID 在唯一性和不可预测性上可能不如 UUID.randomUUID(),但在性能上有显著提升
31+
*
32+
* @return 生成的UUID。
33+
*/
34+
public static String fastUuid() {
35+
long mostSigBits = ThreadLocalRandom.current().nextLong();
36+
long leastSigBits = ThreadLocalRandom.current().nextLong();
37+
38+
// 设置版本4和变体IETF
39+
mostSigBits &= 0xffffffffffff0fffL;
40+
mostSigBits |= 0x0000000000004000L;
41+
leastSigBits &= 0x3fffffffffffffffL;
42+
leastSigBits |= 0x8000000000000000L;
43+
44+
return new UUID(mostSigBits, leastSigBits).toString().replace("-", "");
45+
}
46+
}

app-builder/waterflow/java/waterflow-service/src/main/java/modelengine/fit/waterflow/flowsengine/domain/flows/context/repo/flowcontext/FlowContextPersistRepo.java

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -169,24 +169,17 @@ public void save(List<FlowContext<FlowData>> flowContexts) {
169169
if (flowContexts == null || flowContexts.size() == 0) {
170170
return;
171171
}
172-
log.warn("save before after");
173172
FlowContextPO flowContextPO = contextMapper.find(flowContexts.get(0).getId());
174-
log.warn("save find after");
175173
List<FlowContextPO> flowContextPOS = flowContexts.stream().map(this::serializer).collect(Collectors.toList());
176-
log.warn("save after serializer");
177174
if (flowContextPO == null) {
178175
contextMapper.batchCreate(flowContextPOS);
179-
log.warn("save after batchCreate");
180176
} else {
181177
batchUpdate(flowContextPOS);
182-
log.warn("save after batchUpdate");
183178
}
184179
}
185180

186181
private void batchUpdate(List<FlowContextPO> flowContextPOS) {
187-
log.warn("batchUpdate before");
188182
contextMapper.batchUpdate(flowContextPOS);
189-
log.warn("batchUpdate after");
190183
}
191184

192185
@Override

app-builder/waterflow/java/waterflow-service/src/main/java/modelengine/fit/waterflow/flowsengine/utils/OhScriptExecutor.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@
1616
import modelengine.fit.ohscript.script.interpreter.ASTEnv;
1717
import modelengine.fit.ohscript.script.parser.AST;
1818
import modelengine.fit.ohscript.script.parser.ParserBuilder;
19-
import modelengine.fit.ohscript.util.UUIDUtil;
2019
import modelengine.fit.waterflow.common.Constant;
20+
import modelengine.fit.waterflow.common.utils.UUIDUtil;
2121
import modelengine.fit.waterflow.flowsengine.domain.flows.context.FlowData;
2222
import modelengine.fitframework.log.Logger;
2323
import modelengine.fitframework.util.ObjectUtils;

0 commit comments

Comments
 (0)