HudsonShi commented on code in PR #230:
URL: https://github.com/apache/eventmesh-site/pull/230#discussion_r1674220120


##########
docs/distributed-cluster-deployment-guide/01-distributed-cluster-deployment-guide.md:
##########
@@ -0,0 +1,24 @@
+# Distributed Consistency Protocol for EventMesh

Review Comment:
   I will fix the title into 'Distributed Consistency Protocol or Reverse proxy'



##########
docs/distributed-cluster-deployment-guide/01-distributed-cluster-deployment-guide.md:
##########
@@ -0,0 +1,24 @@
+# Distributed Consistency Protocol for EventMesh
+## **Background Knowledge and Current State:**
+* Kafka utilizes KRaft for insync replication of message from main broker to 
following brokers.
+* In order to prevent the loss of messages, Kafka has a leadership election 
mechanism
+* EventMesh does not fully implement JRaft protocol.
+* A partially functional JRaft PR has been merged, but it requires a fixed IP 
cluster list defined in the `eventmesh.properties` file (immutable after 
initiation). Once a node fails the whole cluster fails. This limits elastic 
scaling of EventMesh cluster nodes during runtime.
+
+## **Using a Distributed Consistency Protocol:**
+### **Solutions: Implement fully functional JRaft Protocol Interface**
+**Result**
+* Enables dynamic scaling and dynamic cluster discovery.
+* If a main node registers in the cluster it will be the main node and start 
to sync the message among followers.  
+* Leader election occurs if the leading node fails.
+Recovered leading node will become a follower.
+* Node failure will no longer results in service failure.
+* Once implement the Jraft interface no need to deploy Nacos.
+
+## **Using the Reverse Proxy:**
+**Current State:** Nginx can be the reverse proxy of EventMesh. In the SDK we 
set the Nginx IP address, Nginx will transfer the subscription address to a 
EventMesh runtime.  
+### **Solutions: Add Gateway Proxy Layer:** A next generation of functional 
solution for the new architecture. Like Nginx. 
+**Current Flaws**

Review Comment:
   I will fix the title into 'A compromise implementation for load balancing 
for now'



##########
docs/distributed-cluster-deployment-guide/01-distributed-cluster-deployment-guide.md:
##########
@@ -0,0 +1,24 @@
+# Distributed Consistency Protocol for EventMesh
+## **Background Knowledge and Current State:**
+* Kafka utilizes KRaft for insync replication of message from main broker to 
following brokers.
+* In order to prevent the loss of messages, Kafka has a leadership election 
mechanism
+* EventMesh does not fully implement JRaft protocol.
+* A partially functional JRaft PR has been merged, but it requires a fixed IP 
cluster list defined in the `eventmesh.properties` file (immutable after 
initiation). Once a node fails the whole cluster fails. This limits elastic 
scaling of EventMesh cluster nodes during runtime.
+
+## **Using a Distributed Consistency Protocol:**
+### **Solutions: Implement fully functional JRaft Protocol Interface**
+**Result**
+* Enables dynamic scaling and dynamic cluster discovery.
+* If a main node registers in the cluster it will be the main node and start 
to sync the message among followers.  
+* Leader election occurs if the leading node fails.
+Recovered leading node will become a follower.
+* Node failure will no longer results in service failure.
+* Once implement the Jraft interface no need to deploy Nacos.
+
+## **Using the Reverse Proxy:**
+**Current State:** Nginx can be the reverse proxy of EventMesh. In the SDK we 
set the Nginx IP address, Nginx will transfer the subscription address to a 
EventMesh runtime.  

Review Comment:
   I need your advisory in Nacos deployment. 



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to