Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[RAW] swim: introduce a dissemination component
Dissemination components broadcasts events about member status updates. Public API: swim.cfg({server = <uri>, members = <array of uris>, heartbeat = <seconds>}) Configures the SWIM module. @server - URI of UDP server to which other cluster members will send SWIM messages. It should have the format "ip:port". @members - array of URIs explicitly defined by a user. These members are never deleted from members table until they are removed from the configuration explicitly. SWIM downloads from them their members tables, merges with its own and repeats. @Heartbeat - how often send a part of members table to another member. Note, that it is not how ofter send the whole table, nor how ofter to send the table to all members. It is only one step of the protocol. swim.stop() Stops the SWIM module: shuts down the server, closes socket, destroys queues, frees memory. Note that after it swim.cfg can be called again. swim.info() Show info about each known member in the format: { ["ip:port"] = { status = <alive/dead>, incarnation = <growing unsigned number> } } Closes #3234
- Loading branch information
Showing
1 changed file
with
228 additions
and
6 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters