Skip to content

Commit d571975

Browse files
committed
feat: optimize trpc-spring-support test
1 parent 9a12cce commit d571975

2 files changed

Lines changed: 21 additions & 20 deletions

File tree

trpc-core/src/main/java/com/tencent/trpc/core/worker/support/thread/ThreadWorkerPool.java

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,6 @@
4545
import java.util.concurrent.ThreadPoolExecutor;
4646
import java.util.concurrent.TimeUnit;
4747
import java.util.concurrent.atomic.AtomicLong;
48-
import org.reflections.ReflectionUtils;
4948

5049
@Extension(ThreadWorkerPool.TYPE)
5150
public class ThreadWorkerPool extends AbstractWorkerPool
@@ -104,7 +103,7 @@ public void init() throws TRpcExtensionException {
104103
try {
105104
// Use JDK 21+ method Executors.newThreadPerTaskExecutor(ThreadFactory threadFactory)
106105
// to create a virtual thread executor service
107-
Class<?> executorsClazz = ReflectionUtils.forName(EXECUTORS_CLASS_NAME);
106+
Class<?> executorsClazz = Class.forName(EXECUTORS_CLASS_NAME);
108107
Method newThreadPerTaskExecutorMethod = executorsClazz
109108
.getDeclaredMethod(NEW_THREAD_PER_TASK_EXECUTOR_NAME, ThreadFactory.class);
110109
ThreadPerTaskExecutorWrapper wrappedThreadPool = ThreadPerTaskExecutorWrapper
@@ -115,7 +114,8 @@ public void init() throws TRpcExtensionException {
115114
logger.info("Successfully created an executor that assigns each task to a "
116115
+ "new virtual thread for processing");
117116
return;
118-
} catch (NoSuchMethodException | InvocationTargetException | IllegalAccessException exception) {
117+
} catch (NoSuchMethodException | InvocationTargetException |
118+
IllegalAccessException | ClassNotFoundException exception) {
119119
logger.warn("The current JDK version does not support virtual threads, please use OpenJDK 21+, "
120120
+ "or remove use_virtual_thread_per_task_executor config, error: ", exception);
121121
}
@@ -219,7 +219,7 @@ private ThreadFactory getThreadFactory(ThreadPoolConfig poolConfig) {
219219
// introducing the "java.lang.Thread.Builder.OfVirtual" dependency will result in an error,
220220
// so we create virtual threads through reflection, which is compatible with JDKs that do not support
221221
// virtual threads. When the JDK does not support virtual threads, it downgrades to thread.
222-
Class<?> threadClazz = ReflectionUtils.forName(THREAD_CLASS_NAME);
222+
Class<?> threadClazz = Class.forName(THREAD_CLASS_NAME);
223223
Method ofVirtualMethod = threadClazz.getDeclaredMethod(OF_VIRTUAL_NAME);
224224
Object virtual = ofVirtualMethod.invoke(threadClazz);
225225
Class<?> virtualClazz = ofVirtualMethod.getReturnType();
@@ -238,7 +238,8 @@ && containsMethod(virtualClazz.getDeclaredMethods(), SCHEDULER_NAME)) {
238238
threadFactory = (ThreadFactory) factoryMethod.invoke(virtual);
239239
logger.info("Successfully created virtual thread factory");
240240
return threadFactory;
241-
} catch (NoSuchMethodException | InvocationTargetException | IllegalAccessException exception) {
241+
} catch (NoSuchMethodException | InvocationTargetException | IllegalAccessException |
242+
ClassNotFoundException exception) {
242243
logger.error("The current JDK version cannot use virtual threads, please use OpenJDK 21+ or "
243244
+ "Tencent Kona JDK FIBER 8+ version, error: ", exception);
244245
}

trpc-dependencies/trpc-dependencies-bom/pom.xml

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -63,31 +63,31 @@
6363
<assertj-core.version>3.24.2</assertj-core.version>
6464
<apollo.version>2.1.0</apollo.version>
6565
<byte.buddy.version>1.14.9</byte.buddy.version>
66-
<caffeine.version>2.9.3</caffeine.version>
66+
<caffeine.version>3.1.8</caffeine.version>
6767
<central-publishing-maven-plugin.version>0.7.0</central-publishing-maven-plugin.version>
68-
<commons.codec.version>1.15</commons.codec.version>
68+
<commons.codec.version>1.17.1</commons.codec.version>
6969
<commons.collections4.version>4.4</commons.collections4.version>
70-
<commons.configurations.version>2.10.1</commons.configurations.version>
70+
<commons.configurations.version>2.11.0</commons.configurations.version>
7171
<commons.lang.version>2.6</commons.lang.version>
72-
<commons.lang3.version>3.12.0</commons.lang3.version>
73-
<commons.pool2.version>2.3</commons.pool2.version>
74-
<commons.io.version>2.15.1</commons.io.version>
75-
<commons.text.version>1.10.0</commons.text.version>
72+
<commons.lang3.version>3.17.0</commons.lang3.version>
73+
<commons.pool2.version>2.12.0</commons.pool2.version>
74+
<commons.io.version>2.18.0</commons.io.version>
75+
<commons.text.version>1.13.0</commons.text.version>
7676
<commons.beanutils.version>1.9.4</commons.beanutils.version>
7777
<nacos.config.sdk.version>0.2.12</nacos.config.sdk.version>
78-
<curator.version>5.5.0</curator.version>
78+
<curator.version>5.7.1</curator.version>
7979
<consul-api.version>1.4.5</consul-api.version>
8080
<disruptor.version>3.4.2</disruptor.version>
8181
<error.prone.annotations.version>2.10.0</error.prone.annotations.version>
8282
<freemarker.version>2.3.32</freemarker.version>
83-
<gson.version>2.8.9</gson.version>
83+
<gson.version>2.11.0</gson.version>
8484
<guava.version>32.1.3-jre</guava.version>
8585
<httpclient.version>4.5.14</httpclient.version>
8686
<httpclient5.version>5.4.1</httpclient5.version>
8787
<httpcore5.version>5.4</httpcore5.version>
8888
<httpcore.version>4.4.15</httpcore.version>
8989
<hutool.all.version>5.8.28</hutool.all.version>
90-
<jackson.version>2.15.0-rc2</jackson.version>
90+
<jackson.version>2.18.2</jackson.version>
9191
<jakarta.servlet.version>6.0.0</jakarta.servlet.version>
9292
<jakarta.annotation-api.version>2.1.1</jakarta.annotation-api.version>
9393
<jakarta.activation-api.version>2.1.3</jakarta.activation-api.version>
@@ -101,7 +101,7 @@
101101
<joda-time.version>2.7</joda-time.version>
102102
<jprotobuf.version>2.4.14</jprotobuf.version>
103103
<junit.version>5.14.2</junit.version>
104-
<javassist.version>3.28.0-GA</javassist.version>
104+
<javassist.version>3.30.2-GA</javassist.version>
105105
<javax.servlet-api.version>3.1.0</javax.servlet-api.version>
106106
<jsr305.version>3.0.2</jsr305.version>
107107
<logback.version>1.4.14</logback.version>
@@ -119,7 +119,7 @@
119119
<nacos.version>1.4.2</nacos.version>
120120
<nacos.client.version>2.2.1</nacos.client.version>
121121
<objenesis.version>3.3</objenesis.version>
122-
<okhttp3.version>4.10.0</okhttp3.version>
122+
<okhttp3.version>4.12.0</okhttp3.version>
123123
<opentracing.version>0.33.0</opentracing.version>
124124
<openfeign.version>12.2</openfeign.version>
125125
<openfeign.form.version>3.8.0</openfeign.form.version>
@@ -132,18 +132,18 @@
132132
<pgv.version>0.4.1</pgv.version>
133133
<pgv.bin.version>0.6.13</pgv.bin.version>
134134
<quasar.version>0.7.9</quasar.version>
135-
<reflections.version>0.9.12</reflections.version>
135+
<reflections.version>0.10.2</reflections.version>
136136
<resteasy.version>6.2.15.Final</resteasy.version>
137137
<sentinel-transport-simple-http.version>1.8.6</sentinel-transport-simple-http.version>
138138
<sentinel.version>1.8.6</sentinel.version>
139139
<slf4j.version>2.0.17</slf4j.version>
140140
<snakeyaml.version>2.0</snakeyaml.version>
141-
<snappy.version>1.1.10.4</snappy.version>
141+
<snappy.version>1.1.10.7</snappy.version>
142142
<spring.version>6.2.7</spring.version>
143143
<springboot.version>3.5.0</springboot.version>
144144
<spring.cloud.gateway.version>4.3.0</spring.cloud.gateway.version>
145145
<transmittable.version>2.12.4</transmittable.version>
146-
<zookeeper.version>3.8.4</zookeeper.version>
146+
<zookeeper.version>3.9.3</zookeeper.version>
147147

148148
<!-- netty-bom, reactor-bom, io.grpc, auto.value.annotations should be upgraded simultaneously -->
149149
<auto.value.annotations.version>1.9</auto.value.annotations.version>

0 commit comments

Comments
 (0)