From 3b8109b393c238445bc676cbfd30363cd9efd664 Mon Sep 17 00:00:00 2001
From: pengys5 <8082209@qq.com>
Date: Sat, 25 Feb 2017 22:22:17 +0800
Subject: [PATCH] 1. cluster and actor module amalgamated into single one 2.
created workerref class use for cover akka actorref class
---
skywalking-collector/pom.xml | 1 -
.../skywalking-collector-actor/pom.xml | 21 ---------
.../actor/selector/WorkerSelector.java | 24 ----------
.../collector/actor/AbstractWorker.java | 3 +-
.../actor/AbstractWorkerProvider.java | 1 -
.../collector/actor/CollectorBootstrap.java | 2 -
.../skywalking/collector/actor/WorkerRef.java | 32 ++++++++++++++
.../collector/actor/WorkersCreator.java | 0
.../actor/selector/RollingSelector.java | 13 +++---
.../actor/selector/WorkerSelector.java | 25 +++++++++++
.../collector/cluster/WorkersRefCenter.java | 44 +++++++++++--------
.../actor/AbstractWorkerProviderTestCase.java | 36 ---------------
.../collector/actor/SpiTestWorker.java | 2 -
.../collector/actor/SpiTestWorkerFactory.java | 5 ---
.../actor/SpiTestWorkerFactoryTestCase.java | 2 -
.../actor/WorkersCreatorTestCase.java | 1 -
.../cluster/WorkersRefCenterTestCase.java | 27 ++++++++----
...ing.collector.actor.AbstractWorkerProvider | 0
.../skywalking-collector-worker/pom.xml | 2 +-
19 files changed, 111 insertions(+), 130 deletions(-)
delete mode 100644 skywalking-collector/skywalking-collector-actor/pom.xml
delete mode 100644 skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/selector/WorkerSelector.java
rename skywalking-collector/{skywalking-collector-actor => skywalking-collector-cluster}/src/main/java/com/a/eye/skywalking/collector/actor/AbstractWorker.java (94%)
rename skywalking-collector/{skywalking-collector-actor => skywalking-collector-cluster}/src/main/java/com/a/eye/skywalking/collector/actor/AbstractWorkerProvider.java (94%)
rename skywalking-collector/{skywalking-collector-actor => skywalking-collector-cluster}/src/main/java/com/a/eye/skywalking/collector/actor/CollectorBootstrap.java (88%)
create mode 100644 skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/WorkerRef.java
rename skywalking-collector/{skywalking-collector-actor => skywalking-collector-cluster}/src/main/java/com/a/eye/skywalking/collector/actor/WorkersCreator.java (100%)
rename skywalking-collector/{skywalking-collector-actor => skywalking-collector-cluster}/src/main/java/com/a/eye/skywalking/collector/actor/selector/RollingSelector.java (64%)
create mode 100644 skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/selector/WorkerSelector.java
rename skywalking-collector/{skywalking-collector-actor => skywalking-collector-cluster}/src/test/java/com/a/eye/skywalking/collector/actor/AbstractWorkerProviderTestCase.java (61%)
rename skywalking-collector/{skywalking-collector-actor => skywalking-collector-cluster}/src/test/java/com/a/eye/skywalking/collector/actor/SpiTestWorker.java (94%)
rename skywalking-collector/{skywalking-collector-actor => skywalking-collector-cluster}/src/test/java/com/a/eye/skywalking/collector/actor/SpiTestWorkerFactory.java (81%)
rename skywalking-collector/{skywalking-collector-actor => skywalking-collector-cluster}/src/test/java/com/a/eye/skywalking/collector/actor/SpiTestWorkerFactoryTestCase.java (97%)
rename skywalking-collector/{skywalking-collector-actor => skywalking-collector-cluster}/src/test/java/com/a/eye/skywalking/collector/actor/WorkersCreatorTestCase.java (99%)
rename skywalking-collector/{skywalking-collector-actor => skywalking-collector-cluster}/src/test/resources/META-INF/services/com.a.eye.skywalking.collector.actor.AbstractWorkerProvider (100%)
diff --git a/skywalking-collector/pom.xml b/skywalking-collector/pom.xml
index 0a0453660..122b12c82 100644
--- a/skywalking-collector/pom.xml
+++ b/skywalking-collector/pom.xml
@@ -5,7 +5,6 @@
skywalking-collector-cluster
skywalking-collector-worker
- skywalking-collector-actor
skywalking
diff --git a/skywalking-collector/skywalking-collector-actor/pom.xml b/skywalking-collector/skywalking-collector-actor/pom.xml
deleted file mode 100644
index a64647fd8..000000000
--- a/skywalking-collector/skywalking-collector-actor/pom.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
- skywalking-collector
- com.a.eye
- 3.0-2017
-
- 4.0.0
-
- skywalking-collector-actor
-
-
-
- com.a.eye
- skywalking-collector-cluster
- ${project.version}
-
-
-
\ No newline at end of file
diff --git a/skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/selector/WorkerSelector.java b/skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/selector/WorkerSelector.java
deleted file mode 100644
index e2901dbb8..000000000
--- a/skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/selector/WorkerSelector.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package com.a.eye.skywalking.collector.actor.selector;
-
-import akka.actor.ActorRef;
-import com.a.eye.skywalking.collector.actor.AbstractWorker;
-import java.util.List;
-
-/**
- * The WorkerSelector should be implemented
- * by any class whose instances are intended to provide select a {@link ActorRef} from a {@link ActorRef} list.
- *
- * Actually, the ActorRef is designed to provide a routing ability in the collector cluster.
- *
- * @author wusheng
- */
-public interface WorkerSelector {
- /**
- * select a {@link ActorRef} from a {@link ActorRef} list.
- *
- * @param members given {@link ActorRef} list, which size is greater than 0;
- * @param message the {@link AbstractWorker} is going to send.
- * @return the selected {@link ActorRef}
- */
- ActorRef select(List members, T message);
-}
diff --git a/skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/AbstractWorker.java b/skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/AbstractWorker.java
similarity index 94%
rename from skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/AbstractWorker.java
rename to skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/AbstractWorker.java
index 3ec70c2f5..c8c5a942e 100644
--- a/skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/AbstractWorker.java
+++ b/skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/AbstractWorker.java
@@ -9,6 +9,7 @@ import com.a.eye.skywalking.collector.actor.selector.WorkerSelector;
import com.a.eye.skywalking.collector.cluster.WorkerListenerMessage;
import com.a.eye.skywalking.collector.cluster.WorkersListener;
import com.a.eye.skywalking.collector.cluster.WorkersRefCenter;
+
import java.util.List;
/**
@@ -42,7 +43,7 @@ public abstract class AbstractWorker extends UntypedActor {
}
public void tell(AbstractWorkerProvider targetWorkerProvider, WorkerSelector selector, T message) throws Throwable {
- List avaibleWorks = WorkersRefCenter.INSTANCE.availableWorks(targetWorkerProvider.roleName());
+ List avaibleWorks = WorkersRefCenter.INSTANCE.availableWorks(targetWorkerProvider.roleName());
selector.select(avaibleWorks, message).tell(message, getSelf());
}
diff --git a/skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/AbstractWorkerProvider.java b/skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/AbstractWorkerProvider.java
similarity index 94%
rename from skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/AbstractWorkerProvider.java
rename to skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/AbstractWorkerProvider.java
index 026e67dc4..0020097ee 100644
--- a/skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/AbstractWorkerProvider.java
+++ b/skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/AbstractWorkerProvider.java
@@ -2,7 +2,6 @@ package com.a.eye.skywalking.collector.actor;
import akka.actor.ActorSystem;
import akka.actor.Props;
-import com.a.eye.skywalking.api.util.StringUtil;
/**
* @author pengys5
diff --git a/skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/CollectorBootstrap.java b/skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/CollectorBootstrap.java
similarity index 88%
rename from skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/CollectorBootstrap.java
rename to skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/CollectorBootstrap.java
index 500d54d4e..7e35737d1 100644
--- a/skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/CollectorBootstrap.java
+++ b/skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/CollectorBootstrap.java
@@ -1,7 +1,5 @@
package com.a.eye.skywalking.collector.actor;
-import akka.actor.ActorSystem;
-
/**
* @author pengys5
*/
diff --git a/skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/WorkerRef.java b/skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/WorkerRef.java
new file mode 100644
index 000000000..c82b89470
--- /dev/null
+++ b/skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/WorkerRef.java
@@ -0,0 +1,32 @@
+package com.a.eye.skywalking.collector.actor;
+
+import akka.actor.ActorRef;
+
+/**
+ * @author pengys5
+ */
+public class WorkerRef {
+ final ActorRef actorRef;
+
+ public WorkerRef(ActorRef actorRef) {
+ this.actorRef = actorRef;
+ }
+
+ void tell(Object message, ActorRef actorRef) {
+ actorRef.tell(message, actorRef);
+ }
+
+ public String path(){
+ return actorRef.path().toString();
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ return actorRef.equals(obj);
+ }
+
+ @Override
+ public String toString() {
+ return actorRef.toString();
+ }
+}
diff --git a/skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/WorkersCreator.java b/skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/WorkersCreator.java
similarity index 100%
rename from skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/WorkersCreator.java
rename to skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/WorkersCreator.java
diff --git a/skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/selector/RollingSelector.java b/skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/selector/RollingSelector.java
similarity index 64%
rename from skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/selector/RollingSelector.java
rename to skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/selector/RollingSelector.java
index 7f6383b21..8ef322c6b 100644
--- a/skywalking-collector/skywalking-collector-actor/src/main/java/com/a/eye/skywalking/collector/actor/selector/RollingSelector.java
+++ b/skywalking-collector/skywalking-collector-cluster/src/main/java/com/a/eye/skywalking/collector/actor/selector/RollingSelector.java
@@ -1,12 +1,13 @@
package com.a.eye.skywalking.collector.actor.selector;
-import akka.actor.ActorRef;
import com.a.eye.skywalking.collector.actor.AbstractWorker;
+import com.a.eye.skywalking.collector.actor.WorkerRef;
+
import java.util.List;
/**
* The RollingSelector is a simple implementation of {@link WorkerSelector}.
- * It choose {@link ActorRef} nearly random, by round-robin.
+ * It choose {@link WorkerRef} nearly random, by round-robin.
*
* @author wusheng
*/
@@ -19,14 +20,14 @@ public enum RollingSelector implements WorkerSelector