Enterprise Integration PatternsConversation Patterns
HOME    PATTERNS    RAMBLINGS    ARTICLES    TALKS    DOWNLOAD    BOOKS    CONTACT

Leader Election

Conversation Patterns

Previous Previous   Next Next

Distributed Consensus

Some conversations among multiple participants require one participant to play a special role, e.g. to act as a coordinator.

How can a set of participants agree on a single participant assuming a special role?

  • Participant implementations can fail, making a fixed leader assignment unreliable.

Use a distributed consensus algorithm based on Paxos to elect a leader.

Leader election is a common distributed algorithm problem [22] with a number of proven algorithms.

[22] Distributed Algorithms, Lynch, 1996, Morgan Kaufmann

http://static.googleusercontent.com/media/research.google.com/en//archive/chubby-osdi06.pdf



Introduction
Overview
Preface
Table of Contents
Introduction
Describing Conversations
Choreography
Orchestration
Hypermedia State
Conversation Vocabulary
Discovery
Dynamic Discovery
Advertise Availability
Consult Directory
Referral
Leader Election
Starting a Conversation
Three-Way Hand Shake
Acquire Token First
Rotate Tokens
Verify Identity
User Grants Access
Basic Conversations
Fire-and-Forget
Asynchronous Request-Response
Request-Response with Retry
Polling
Subscribe-Notify
Quick Acknowledgment
Intermediaries
Proxy
Relay
Load Balancer
Scatter-Gather
Managing Distributed Systems
Heartbeat
Resource Management
Incremental State Build-up
Lease
Renewal Reminder
Ensuring Consistency
Ignore Error
Compensating Action
Tentative Operation
Coordinated Agreement
Appendices
Bibliography