FSpreadF# routines to support participating in a Spread network. | |
Download |
FSpread Ranking & Summary
Advertisement
- License:
- Freeware
- Publisher Name:
- Nick Gunn
- Operating Systems:
- Windows All
- File Size:
- 1.4 MB
FSpread Tags
FSpread Description
FSpread provides a small set of F# routines to support participating in a Spread network. Spread is an open source toolkit that provides a high performance messaging service that is resilient to faults across local and wide area networks. It has a client-daemon architecture, with most of the functionality implemented in the Spread daemon and a simple tcp-based protocol for communication with clients. By providing consistent, ordered and reliable membership messages to processes participating in a network, those processes can implement truly-distributed algorithms for fault-tolerance, load-balancing and leader-election, without further agreement / consensus protocols. This project provides an F# implementation of the Spread client-side protocol, allowing F# projects to participate in a Spread network. The sample projects provided include: A console application for joining and leaving groups, as well as sending messages to those groups. A server application that may have many instances, each agreeing on who is the leader, with the remaining replicating that state. Instances may come and go. The server demonstrates how a new leader may be elected in the event of the previous one failing. The server supports client subscriptions and load-balances these amongst the leader/replicas. Client subscriptions are migrated to new nodes in the event of node failures. A client application that subscribes the server application for its current state.
FSpread Related Software