Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multi Deployment - multiple dmsg-discovery configuration [WIP] #281

Open
wants to merge 4 commits into
base: develop
Choose a base branch
from

Conversation

0pcom
Copy link
Collaborator

@0pcom 0pcom commented Aug 31, 2024

This PR attempts to support configuration of multiple dmsg discovery servers or multiple dmsg networks.

For dmsg curl or any short-lived dmsg client this can be implemented as fallback such that if the client configured with the first specified dmsg discovery makes a request which returns an error (i.e. dmsg errors - not http status code errors) or no response, the request is attempted again with a dmsg client configured with the next specified dmsg discovery server.

For long-lived dmsg clients, or those which wrap an HTTP or TCP server application OR the dmsg client of the skywire visor, it will be required to use as many clients simultaneously as the number of dmsg-discovery servers which are specified, and to connect to or register the client in all configured dmsg discoveries simultaneously.

For the dmsg server it will be required to connect to both dmsg discoveries ; and separate or different ports must be used for each configured dmsg-discovery.

NOTE: the retry logic for dmsg clients is very weak, currently. If the request cannot be fulfilled from a dmsg server that the client is currently connected to, but the client it is attempting to connect to is itself connected to more than one dmsg server, the first client should attempt to connect to the second one via the other dmsg server before using a client which is connected to another dmsg discovery server.

PR is WIP

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant