Browse Source

Update Service.java (#6553)

* Create Service.java
Redkale 4 years ago
parent
commit
9df4e25da9

+ 1 - 1
frameworks/Java/redkale/benchmark_config.json

@@ -61,7 +61,7 @@
             },
             },
             "postgres": {
             "postgres": {
                 "db_url": "/db",
                 "db_url": "/db",
-                "query_url": "/queries?q=", 
+                "query_url2": "/queries?q=", 
                 "fortune_url2": "/fortunes",
                 "fortune_url2": "/fortunes",
                 "update_url2": "/updates?q=",
                 "update_url2": "/updates?q=",
                 "port": 8080,
                 "port": 8080,

+ 5 - 8
frameworks/Java/redkale/src/main/java/org/redkalex/benchmark/Service.java

@@ -5,8 +5,7 @@
  */
  */
 package org.redkalex.benchmark;
 package org.redkalex.benchmark;
 
 
-import java.util.*;
-import java.util.concurrent.CompletableFuture;
+import java.util.concurrent.*;
 import javax.annotation.Resource;
 import javax.annotation.Resource;
 import org.redkale.net.ChannelContext;
 import org.redkale.net.ChannelContext;
 import org.redkale.net.http.*;
 import org.redkale.net.http.*;
@@ -23,8 +22,6 @@ public class Service extends AbstractService {
 
 
     private static final byte[] helloBytes = "Hello, world!".getBytes();
     private static final byte[] helloBytes = "Hello, world!".getBytes();
 
 
-    private final ThreadLocal<Random> localRandom = ThreadLocal.withInitial(Random::new);
-
     @Resource
     @Resource
     private DataSource source;
     private DataSource source;
 
 
@@ -42,14 +39,14 @@ public class Service extends AbstractService {
 
 
     @RestMapping(name = "db")
     @RestMapping(name = "db")
     public CompletableFuture<World> findWorldAsync(ChannelContext context) {
     public CompletableFuture<World> findWorldAsync(ChannelContext context) {
-        return source.findAsync(World.class, context, 1 + localRandom.get().nextInt(10000));
+        return source.findAsync(World.class, context, 1 + ThreadLocalRandom.current().nextInt(10000));
     }
     }
 
 
     @RestMapping(name = "queries")
     @RestMapping(name = "queries")
     public CompletableFuture<World[]> queryWorldAsync(ChannelContext context, int q) {
     public CompletableFuture<World[]> queryWorldAsync(ChannelContext context, int q) {
         final int size = Math.min(500, Math.max(1, q));
         final int size = Math.min(500, Math.max(1, q));
         final World[] worlds = new World[size];
         final World[] worlds = new World[size];
-        final Random random = localRandom.get();
+        final ThreadLocalRandom random = ThreadLocalRandom.current();
         final CompletableFuture[] futures = new CompletableFuture[size];
         final CompletableFuture[] futures = new CompletableFuture[size];
         for (int i = 0; i < size; i++) {
         for (int i = 0; i < size; i++) {
             final int index = i;
             final int index = i;
@@ -62,7 +59,7 @@ public class Service extends AbstractService {
     public CompletableFuture<World[]> updateWorldAsync(ChannelContext context, int q) {
     public CompletableFuture<World[]> updateWorldAsync(ChannelContext context, int q) {
         final int size = Math.min(500, Math.max(1, q));
         final int size = Math.min(500, Math.max(1, q));
         final World[] worlds = new World[size];
         final World[] worlds = new World[size];
-        final Random random = localRandom.get();
+        final ThreadLocalRandom random = ThreadLocalRandom.current();
         final CompletableFuture[] futures = new CompletableFuture[size];
         final CompletableFuture[] futures = new CompletableFuture[size];
         for (int i = 0; i < size; i++) {
         for (int i = 0; i < size; i++) {
             final int index = i;
             final int index = i;
@@ -89,7 +86,7 @@ public class Service extends AbstractService {
         }
         }
         final int size = Math.min(500, Math.max(1, q));
         final int size = Math.min(500, Math.max(1, q));
         final CachedWorld[] worlds = new CachedWorld[size];
         final CachedWorld[] worlds = new CachedWorld[size];
-        final Random random = localRandom.get();
+        final ThreadLocalRandom random = ThreadLocalRandom.current();
         for (int i = 0; i < size; i++) {
         for (int i = 0; i < size; i++) {
             worlds[i] = cache.findAt(random.nextInt(10000));
             worlds[i] = cache.findAt(random.nextInt(10000));
         }
         }