diff options
| author | Alan Conway <aconway@apache.org> | 2010-10-25 18:00:47 +0000 |
|---|---|---|
| committer | Alan Conway <aconway@apache.org> | 2010-10-25 18:00:47 +0000 |
| commit | 327bbd4da201fbb7e2967c3366e12ab43687475a (patch) | |
| tree | df94965b381b401a9ce6cbb3ea887d5014da3f0b /cpp/src/qpid | |
| parent | f27a733f9a4cca3ad2a42acb35ab4620a47e320d (diff) | |
| download | qpid-python-327bbd4da201fbb7e2967c3366e12ab43687475a.tar.gz | |
Initial design document on implementing active/passive clustering.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1027211 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid')
| -rw-r--r-- | cpp/src/qpid/cluster/new-cluster-active-passive.txt | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/cpp/src/qpid/cluster/new-cluster-active-passive.txt b/cpp/src/qpid/cluster/new-cluster-active-passive.txt new file mode 100644 index 0000000000..56618da83c --- /dev/null +++ b/cpp/src/qpid/cluster/new-cluster-active-passive.txt @@ -0,0 +1,39 @@ +-*-org-*- +* Active/passive cluster implementation + +An active/passive implementation requires a subset of the active/active approach: +- drop Queue ownership and locking +- replicate subset of Cluster interface, don't need to know all message disposition. + +Can re-use: +- cluster membership +- new member updates +- store integration + +Simpler implementation of broker::Cluster: +- act like distributed MessageStore. Don't need acquisition details. +- can do immediate local enqueue and still guarantee order. +- can use smaller message IDs: just sequence number. Can be implicit. + +Extra requirements: +- Passive members refuse client connections and redirect to active member. +- Choose new active member when the active dies. + +Question: How best to direct clients to the correct node after failover? + +** Active/active vs. active passive + +Active/active benefits: +- Total # connections: practical 60k limit per node. +- Handle client losing connectivity to one cluster node - can fail over to any. +- Some load sharing: reading from client + multicast only done on direct node. + +Active/active drawbacks: +- Co-ordinating message allocation impacts performance. + +Active/passive benefits: +- Don't need message allocation strategy, can feed consumers at top speed. + +Active/passive drawbacks: +- Can't help clients with no connectivity to the active member. +- Clients must find the single active node in failover. |
