Skip to content

Commit 9e1e9b6

Browse files
committed
chore: optimize performance
1 parent 1d3ccc1 commit 9e1e9b6

File tree

3 files changed

+30
-3
lines changed

3 files changed

+30
-3
lines changed

src/main/java/tech/wetech/flexmodel/application/ApiRuntimeApplicationService.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import graphql.GraphQL;
66
import io.netty.handler.codec.http.HttpResponseStatus;
77
import io.vertx.ext.web.RoutingContext;
8+
import io.vertx.mutiny.core.eventbus.EventBus;
89
import jakarta.enterprise.context.ApplicationScoped;
910
import jakarta.inject.Inject;
1011
import lombok.extern.slf4j.Slf4j;
@@ -56,6 +57,9 @@ public class ApiRuntimeApplicationService {
5657
@Inject
5758
SettingsService settingsService;
5859

60+
@Inject
61+
EventBus eventBus;
62+
5963
public ExecutionResult execute(String operationName, String query, Map<String, Object> variables) {
6064
GraphQL graphQL = graphQLProvider.getGraphQL();
6165
if (variables == null) {
@@ -192,7 +196,8 @@ public void log(RoutingContext routingContext, Runnable runnable) {
192196
apiData.setStatus(routingContext.response().getStatusCode());
193197
apiData.setMessage(routingContext.response().getStatusMessage());
194198
apiData.setExecTime(System.currentTimeMillis() - beginTime);
195-
routingContext.addEndHandler(handle-> apiLogService.create(apiLog));}
199+
eventBus.publish("request.logging", apiLog);
200+
}
196201

197202
}
198203

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
package tech.wetech.flexmodel.infrastructrue;
2+
3+
import io.quarkus.vertx.ConsumeEvent;
4+
import jakarta.enterprise.context.ApplicationScoped;
5+
import jakarta.inject.Inject;
6+
import tech.wetech.flexmodel.codegen.entity.ApiLog;
7+
import tech.wetech.flexmodel.domain.model.api.ApiLogService;
8+
9+
/**
10+
* @author cjbi
11+
*/
12+
@ApplicationScoped
13+
public class LogEventConsumer {
14+
15+
@Inject
16+
ApiLogService apiLogService;
17+
18+
@ConsumeEvent("request.logging") // 监听特定地址的事件
19+
public void consume(ApiLog apiLog) {
20+
apiLogService.create(apiLog);
21+
}
22+
23+
}

src/main/java/tech/wetech/flexmodel/infrastructrue/SettingsEventConsumer.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,9 @@
1616
@ApplicationScoped
1717
public class SettingsEventConsumer {
1818

19-
2019
@ConsumeEvent("settings-changed") // 监听特定地址的事件
2120
public void consume(SettingsChanged event) {
22-
log.info("Received message: {}", event.getMessage());
21+
log.info("Received settings message: {}", event.getMessage());
2322
// 处理事件
2423
List<String> invalidKeys = new ArrayList<>();
2524
ApiRateLimiterHolder.getMap().forEach((k, v) -> {

0 commit comments

Comments
 (0)