I won’t go into the details of what Crossbar is or the open source Autobahn implementation of WAMP (no, no, not LAMP on Windows, this is different), but at a very high level, it’s the ability to utilize the websockets protocol to move data over the web. Autobahn leverages publish/subscribe or remote procedure call in Python, and many other flavors, over websockets, and allows developers to decouple their endpoints over a WAMP Router. Sounds messy, but it isn’t!
If you have ever worked with Windows Communication Foundation (WCF), I urge you to take a look at this. I got an implementation up and running on an Ubuntu server in a fraction of the time it took me to just figure out WCF’s convoluted and optional pieces of configuration.
As of this post, Crossbar is dependent on Twisted which still is in the process of being ported to Python 3, but if you have dropped Python 2 as you should have (It’s EOL folks, just please port everything! ;-)) don’t worry, Crossbar is just the Router!
Huh? I make the distinction above to exaggerate that the framework is decoupled. Think of Crossbar as a physical network router in a hypothetical web hosting data center, though we know it’s a logical piece of software, just stay with me. Physical routers don’t serve web pages (data/content), that’s the job of the servers, they just move data over a network. That’s exactly how you should think of Crossbar and why you should be excited about it. It’s a proxy of sorts to move data from one endpoint to another. Should that endpoint be a web browser on one end and a web server on another (in a traditional sense), or even a web browser on one side and a native Android app, each getting real-time, full duplex communication from the other asynchronously!