diff --git a/net/src/test/java/com/zfoo/net/core/gateway/GatewayTest.java b/net/src/test/java/com/zfoo/net/core/gateway/GatewayTest.java
index fbd75329..6ad71fc7 100644
--- a/net/src/test/java/com/zfoo/net/core/gateway/GatewayTest.java
+++ b/net/src/test/java/com/zfoo/net/core/gateway/GatewayTest.java
@@ -84,7 +84,7 @@ public class GatewayTest {
var executor = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors());
var request = new GatewayToProviderRequest();
- request.setMessage(NetContext.getConfigManager().getLocalConfig().toLocalRegisterVO().toString());
+ request.setMessage("Hello, this is the client!");
var atomicInteger = new AtomicInteger(0);
for (int i = 0; i < executorSize; i++) {
diff --git a/net/src/test/java/com/zfoo/net/core/provider/controller/ProviderController.java b/net/src/test/java/com/zfoo/net/core/provider/ProviderController.java
similarity index 54%
rename from net/src/test/java/com/zfoo/net/core/provider/controller/ProviderController.java
rename to net/src/test/java/com/zfoo/net/core/provider/ProviderController.java
index 4d565611..9977ce6b 100644
--- a/net/src/test/java/com/zfoo/net/core/provider/controller/ProviderController.java
+++ b/net/src/test/java/com/zfoo/net/core/provider/ProviderController.java
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 The zfoo Authors
- *
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
@@ -11,14 +10,17 @@
* See the License for the specific language governing permissions and limitations under the License.
*/
-package com.zfoo.net.core.provider.controller;
+package com.zfoo.net.core.provider;
import com.zfoo.net.NetContext;
import com.zfoo.net.dispatcher.model.anno.PacketReceiver;
-import com.zfoo.net.packet.provider.CM_Provider;
-import com.zfoo.net.packet.provider.SM_Provider;
+import com.zfoo.net.packet.provider.ProviderMessAnswer;
+import com.zfoo.net.packet.provider.ProviderMessAsk;
import com.zfoo.net.session.model.Session;
import com.zfoo.protocol.util.JsonUtils;
+import com.zfoo.protocol.util.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
/**
@@ -28,15 +30,15 @@ import org.springframework.stereotype.Component;
@Component
public class ProviderController {
+ private static final Logger logger = LoggerFactory.getLogger(ProviderController.class);
+
@PacketReceiver
- public void atCM_Provider(Session session, CM_Provider cm) {
- System.out.println("服务器收到消息:" + JsonUtils.object2String(cm));
+ public void atProviderMessAsk(Session session, ProviderMessAsk ask) {
+ logger.info("provider receive [packet:{}] from consumer", JsonUtils.object2String(ask));
- var sm = new SM_Provider();
- sm.setA(NetContext.getConfigManager().getLocalConfig().toLocalRegisterVO().toString());
- sm.setB(cm.getB());
+ var response = new ProviderMessAnswer();
+ response.setMessage(StringUtils.format("Hello, this is the [provider:{}] answer!", NetContext.getConfigManager().getLocalConfig().toLocalRegisterVO().toString()));
- System.out.println("服务器返回消息:" + JsonUtils.object2String(sm));
- NetContext.getDispatcher().send(session, sm);
+ NetContext.getDispatcher().send(session, response);
}
}
diff --git a/net/src/test/java/com/zfoo/net/core/provider/ProviderTest.java b/net/src/test/java/com/zfoo/net/core/provider/ProviderTest.java
index ad2bd328..5f09dffd 100644
--- a/net/src/test/java/com/zfoo/net/core/provider/ProviderTest.java
+++ b/net/src/test/java/com/zfoo/net/core/provider/ProviderTest.java
@@ -14,15 +14,19 @@
package com.zfoo.net.core.provider;
import com.zfoo.net.NetContext;
-import com.zfoo.net.packet.provider.CM_Provider;
-import com.zfoo.net.packet.provider.SM_Provider;
+import com.zfoo.net.packet.provider.ProviderMessAnswer;
+import com.zfoo.net.packet.provider.ProviderMessAsk;
import com.zfoo.net.session.SessionUtils;
import com.zfoo.protocol.util.JsonUtils;
import com.zfoo.util.ThreadUtils;
import org.junit.Ignore;
import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.springframework.context.support.ClassPathXmlApplicationContext;
+import java.util.concurrent.atomic.AtomicInteger;
+
/**
* @author jaysunxiao
* @version 3.0
@@ -30,6 +34,8 @@ import org.springframework.context.support.ClassPathXmlApplicationContext;
@Ignore
public class ProviderTest {
+ private static final Logger logger = LoggerFactory.getLogger(ProviderTest.class);
+
/**
* RPC教程:
* 1.首先必须保证启动zookeeper
@@ -62,21 +68,16 @@ public class ProviderTest {
* 随机消费,同步请求的方式
*/
@Test
- public void startSyncRandomConsumer() {
+ public void startSyncRandomConsumer() throws Exception {
var context = new ClassPathXmlApplicationContext("provider/consumer_random_config.xml");
SessionUtils.printSessionInfo();
+ var ask = new ProviderMessAsk();
+ ask.setMessage("Hello, this is the consumer!");
for (int i = 0; i < 1000; i++) {
ThreadUtils.sleep(3000);
- var cm = new CM_Provider();
- cm.setA(NetContext.getConfigManager().getLocalConfig().toLocalRegisterVO().toString());
- try {
- System.out.println("客户端发送消息:" + JsonUtils.object2String(cm));
- var sm = NetContext.getConsumer().syncAsk(cm, SM_Provider.class, null).packet();
- System.out.println("客户端收到消息:" + JsonUtils.object2String(sm));
- } catch (Exception e) {
- e.printStackTrace();
- }
+ var response = NetContext.getConsumer().syncAsk(ask, ProviderMessAnswer.class, null).packet();
+ logger.info("消费者请求[{}]收到消息[{}]", i, JsonUtils.object2String(response));
}
ThreadUtils.sleep(Long.MAX_VALUE);
@@ -90,13 +91,14 @@ public class ProviderTest {
var context = new ClassPathXmlApplicationContext("provider/consumer_random_config.xml");
SessionUtils.printSessionInfo();
+ var ask = new ProviderMessAsk();
+ ask.setMessage("Hello, this is the consumer!");
+ var atomicInteger = new AtomicInteger(0);
+
for (int i = 0; i < 1000; i++) {
ThreadUtils.sleep(3000);
- var cm = new CM_Provider();
- cm.setA(NetContext.getConfigManager().getLocalConfig().toLocalRegisterVO().toString());
- System.out.println("客户端发送消息:" + JsonUtils.object2String(cm));
- NetContext.getConsumer().asyncAsk(cm, SM_Provider.class, null).whenComplete(sm -> {
- System.out.println("客户端收到消息:" + JsonUtils.object2String(sm));
+ NetContext.getConsumer().asyncAsk(ask, ProviderMessAnswer.class, null).whenComplete(answer -> {
+ logger.info("消费者请求[{}]收到消息[{}]", atomicInteger.incrementAndGet(), JsonUtils.object2String(answer));
});
}
@@ -110,14 +112,15 @@ public class ProviderTest {
public void startConsistentSessionConsumer() {
var context = new ClassPathXmlApplicationContext("provider/consumer_consistent_session_config.xml");
SessionUtils.printSessionInfo();
- ThreadUtils.sleep(3000);
+
+ var ask = new ProviderMessAsk();
+ ask.setMessage("Hello, this is the consumer!");
+ var atomicInteger = new AtomicInteger(0);
+
for (int i = 0; i < 1000; i++) {
ThreadUtils.sleep(3000);
- var cm = new CM_Provider();
- cm.setA(NetContext.getConfigManager().getLocalConfig().toLocalRegisterVO().toString());
- System.out.println("客户端发送消息:" + JsonUtils.object2String(cm));
- NetContext.getConsumer().asyncAsk(cm, SM_Provider.class, 100).whenComplete(sm -> {
- System.out.println("客户端收到消息:" + JsonUtils.object2String(sm));
+ NetContext.getConsumer().asyncAsk(ask, ProviderMessAnswer.class, 100).whenComplete(answer -> {
+ logger.info("消费者请求[{}]收到消息[{}]", atomicInteger.incrementAndGet(), JsonUtils.object2String(answer));
});
}
@@ -131,13 +134,15 @@ public class ProviderTest {
public void startShortestTimeConsumer() {
var context = new ClassPathXmlApplicationContext("provider/consumer_shortest_time_config.xml");
SessionUtils.printSessionInfo();
+
+ var ask = new ProviderMessAsk();
+ ask.setMessage("Hello, this is the consumer!");
+ var atomicInteger = new AtomicInteger(0);
+
for (int i = 0; i < 1000; i++) {
ThreadUtils.sleep(3000);
- var cm = new CM_Provider();
- cm.setA(NetContext.getConfigManager().getLocalConfig().toLocalRegisterVO().toString());
- System.out.println("客户端发送消息:" + JsonUtils.object2String(cm));
- NetContext.getConsumer().asyncAsk(cm, SM_Provider.class, null).whenComplete(sm -> {
- System.out.println("客户端收到消息:" + JsonUtils.object2String(sm));
+ NetContext.getConsumer().asyncAsk(ask, ProviderMessAnswer.class, null).whenComplete(answer -> {
+ logger.info("消费者请求[{}]收到消息[{}]", atomicInteger.incrementAndGet(), JsonUtils.object2String(answer));
});
}
diff --git a/net/src/test/java/com/zfoo/net/packet/gateway/GatewayToProviderRequest.java b/net/src/test/java/com/zfoo/net/packet/gateway/GatewayToProviderRequest.java
index f475fb0d..0de4aed2 100644
--- a/net/src/test/java/com/zfoo/net/packet/gateway/GatewayToProviderRequest.java
+++ b/net/src/test/java/com/zfoo/net/packet/gateway/GatewayToProviderRequest.java
@@ -21,7 +21,7 @@ import com.zfoo.protocol.IPacket;
*/
public class GatewayToProviderRequest implements IPacket {
- public static final transient short PROTOCOL_ID = 4102;
+ public static final transient short PROTOCOL_ID = 5000;
private String message;
diff --git a/net/src/test/java/com/zfoo/net/packet/gateway/GatewayToProviderResponse.java b/net/src/test/java/com/zfoo/net/packet/gateway/GatewayToProviderResponse.java
index 9b55c293..e13514ff 100644
--- a/net/src/test/java/com/zfoo/net/packet/gateway/GatewayToProviderResponse.java
+++ b/net/src/test/java/com/zfoo/net/packet/gateway/GatewayToProviderResponse.java
@@ -21,7 +21,7 @@ import com.zfoo.protocol.IPacket;
*/
public class GatewayToProviderResponse implements IPacket {
- public static final transient short PROTOCOL_ID = 4103;
+ public static final transient short PROTOCOL_ID = 5001;
private String message;
diff --git a/net/src/test/java/com/zfoo/net/packet/provider/SM_Provider.java b/net/src/test/java/com/zfoo/net/packet/provider/ProviderMessAnswer.java
similarity index 69%
rename from net/src/test/java/com/zfoo/net/packet/provider/SM_Provider.java
rename to net/src/test/java/com/zfoo/net/packet/provider/ProviderMessAnswer.java
index 3edc6014..8473bc5b 100644
--- a/net/src/test/java/com/zfoo/net/packet/provider/SM_Provider.java
+++ b/net/src/test/java/com/zfoo/net/packet/provider/ProviderMessAnswer.java
@@ -19,31 +19,23 @@ import com.zfoo.protocol.IPacket;
* @author jaysunxiao
* @version 3.0
*/
-public class SM_Provider implements IPacket {
+public class ProviderMessAnswer implements IPacket {
- public static final transient short PROTOCOL_ID = 4101;
+ public static final transient short PROTOCOL_ID = 4001;
- private String a;
- private int b;
-
- public String getA() {
- return a;
- }
-
- public void setA(String a) {
- this.a = a;
- }
-
- public int getB() {
- return b;
- }
-
- public void setB(int b) {
- this.b = b;
- }
+ private String message;
@Override
public short protocolId() {
return PROTOCOL_ID;
}
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
}
diff --git a/net/src/test/java/com/zfoo/net/packet/provider/CM_Provider.java b/net/src/test/java/com/zfoo/net/packet/provider/ProviderMessAsk.java
similarity index 69%
rename from net/src/test/java/com/zfoo/net/packet/provider/CM_Provider.java
rename to net/src/test/java/com/zfoo/net/packet/provider/ProviderMessAsk.java
index ba0039f3..da49bb6c 100644
--- a/net/src/test/java/com/zfoo/net/packet/provider/CM_Provider.java
+++ b/net/src/test/java/com/zfoo/net/packet/provider/ProviderMessAsk.java
@@ -19,32 +19,23 @@ import com.zfoo.protocol.IPacket;
* @author jaysunxiao
* @version 3.0
*/
-public class CM_Provider implements IPacket {
+public class ProviderMessAsk implements IPacket {
- public static final transient short PROTOCOL_ID = 4100;
+ public static final transient short PROTOCOL_ID = 4000;
- private String a;
-
- private int b;
-
- public String getA() {
- return a;
- }
-
- public void setA(String a) {
- this.a = a;
- }
-
- public int getB() {
- return b;
- }
-
- public void setB(int b) {
- this.b = b;
- }
+ private String message;
@Override
public short protocolId() {
return PROTOCOL_ID;
}
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
}
diff --git a/net/src/test/resources/gateway/gateway_client_config.xml b/net/src/test/resources/gateway/gateway_client_config.xml
index 7605c7f6..45533e97 100644
--- a/net/src/test/resources/gateway/gateway_client_config.xml
+++ b/net/src/test/resources/gateway/gateway_client_config.xml
@@ -18,8 +18,7 @@
-
+
diff --git a/net/src/test/resources/gateway/gateway_consistent_session_config.xml b/net/src/test/resources/gateway/gateway_consistent_session_config.xml
index 82b56014..cc718d03 100644
--- a/net/src/test/resources/gateway/gateway_consistent_session_config.xml
+++ b/net/src/test/resources/gateway/gateway_consistent_session_config.xml
@@ -18,8 +18,7 @@
-
+
diff --git a/net/src/test/resources/protocol.xml b/net/src/test/resources/protocol.xml
index b9882fb0..b682aa6e 100644
--- a/net/src/test/resources/protocol.xml
+++ b/net/src/test/resources/protocol.xml
@@ -73,10 +73,11 @@
-
-
-
-
+
+
+
+
+
diff --git a/net/src/test/resources/provider/consumer_consistent_session_config.xml b/net/src/test/resources/provider/consumer_consistent_session_config.xml
index 08d9f85a..ac20d749 100644
--- a/net/src/test/resources/provider/consumer_consistent_session_config.xml
+++ b/net/src/test/resources/provider/consumer_consistent_session_config.xml
@@ -19,14 +19,12 @@
-
+
-
diff --git a/net/src/test/resources/provider/consumer_random_config.xml b/net/src/test/resources/provider/consumer_random_config.xml
index f06f53db..680fbcbf 100644
--- a/net/src/test/resources/provider/consumer_random_config.xml
+++ b/net/src/test/resources/provider/consumer_random_config.xml
@@ -18,14 +18,12 @@
-
+
-
diff --git a/net/src/test/resources/provider/consumer_shortest_time_config.xml b/net/src/test/resources/provider/consumer_shortest_time_config.xml
index 193269a2..64d3dc29 100644
--- a/net/src/test/resources/provider/consumer_shortest_time_config.xml
+++ b/net/src/test/resources/provider/consumer_shortest_time_config.xml
@@ -18,8 +18,7 @@
-
+
diff --git a/net/src/test/resources/provider/provider_config.xml b/net/src/test/resources/provider/provider_config.xml
index 97e8c79c..dedde153 100644
--- a/net/src/test/resources/provider/provider_config.xml
+++ b/net/src/test/resources/provider/provider_config.xml
@@ -19,8 +19,7 @@
-
+