Hi everyone, today I'd like to announce (and advertise a little bit) two packages for Go that we've developed in our company and use them in the core of our pure-Go backendstack.
First one, AstraNet, is a multi-purpose Go component that is a stream multiplexer on the first place, and besides that it provides a virtual network, zero-configuration service discovery, automatic round-robin and hash-based balancing of service backends, fully autonomous P2P routing. I used the term "component" rather than "framework" because it acts like a typical net.Listener and can be interchanged with TCP one to serve HTTP as well, you can combine it with other tools you like and we do not force anyone to create a framework-lock in your projects. Note, that you can also use KCP-over-UDP rather than TCP for the underlying ordered transport. The second one, Chanserv, provides a useful abstraction over AstraNet, it leverages its streaming and discovery capabilites and allows to serve `<- chan <- chan Message`-like constructions over the net, reassembling the result into `<- chan <- chan Message` on the other end. All the streams run independently from each other, so if one stream becomes slow or blocked, that would not slow down the others. This principle allows us to implement hotel search over dozens of rate sources while delivering results to the user as fast as they appear on the other side. (check it out: http://zenhotels.com any feedback is always welcome, you can write to me directly). We're very proud to be contributors to the Go opensource and be a part of this excellent community. And of course, pull requests are always welcome. To describe principles behind AstraNet and Chanserv better, we've wrote a few articles in our blog: 1) http://tech.zenhotels.com/introducing-astranet/ 2) http://tech.zenhotels.com/chanserv-and-astranet/ Of course, more deep examples and articles are coming soon, as the time allows. Cheers! - Max -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.