This looks pretty new and under developed. In a world of service mesh proliferation not sure where this fits as there is some feature overlap.
> PubSub is built in as a first class citizen for asynchronous communication and event driven architectures.
Would be interested to see how this is implemented and what it’s consistency and reliability dynamics are.
Have care with using this. We were using it and repos were renamed and moved causing all sorts of issues.
Seems like a sort of light service mesh, but delivered from within the app, and very straightforward. I'll have to look at mDNS, had heard of it, but never read into it.
Probably mostly off-topic, but every time I see the words “Go” and “framework” together in a sentence, I can't help but chuckle. Go is, idiomatically, a very anti-framework and pro-library language. And I think that that's a good thing. The closest thing idiomatic Go has to frameworks are the stdlib's “interface packages” like package image or package database/sql/driver, which are amazing because they make it easier to create an actual ecosystem instead of a network of incompatible frameworks. Anyone who wants to create a “framework” for go should instead learn from those packages and try to define a set of interfaces which work together to achieve a goal.
mDNS is an interesting choice for service discovery. Neat idea for local development, but probably not great in production.
I believe most cloud providers don't support multicast, meaning mDNS would not work there. It's also quite slow and/or very chatty in large networks.
Looks there is support for other service discovery mechanisms via plugins, though.