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

Simplify publishing by introducing a service rather than giving threads endpoints #474

Open
jeremycline opened this issue Aug 30, 2017 · 0 comments

Comments

@jeremycline
Copy link
Member

At the moment, each Python thread requires a ZeroMQ endpoint (e.g. 'tcp://127.0.0.1:9999'). This is added in the configuration file and both publishers and consumers need this configuration to work properly. This makes it impossible to use short-lived dynamic threads that send messages.

Additionally, it's very difficult to debug problems with published messages disappearing because of all the various sockets it could have been published to (or not, as the case may be). Basically, the current implementation looks a bit like:

fedmsg-current-arch - page 1

I would like to propose we add a service that is essentially a broker. It accepts requests from clients to publish messages and responds with the result. By default, it would accept submissions over a IPC socket, but TCP could also be used. It binds to a publishing socket that subscribers can connect to and receive all submitted messages:

fedmsg-publish-new

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

No branches or pull requests

1 participant