How to run Python Autobahn applications in production?
Question: I'm using Autobahn on a project and while reading the [running autobahn
components section](http://autobahn.ws/python/wamp/programming.html#running-
components) of the docs I've come across the fact that you can run Application
components using the built in ApplicationRunner. E.g.,

    
    
    from autobahn.asyncio.wamp import ApplicationRunner
    
    runner = ApplicationRunner(url=u"ws://localhost:8080/ws", realm=u"realm1")
    runner.run(MyComponent)
    

The
[docs](http://autobahn.ws/python/reference/autobahn.asyncio.html#autobahn.asyncio.wamp.ApplicationRunner)
specifically state the application runner is for development,

> This class is a convenience tool mainly for development and quick hosting of
> WAMP application components.

I want to know how WAMP application components (created via Autobahn or
otherwise) are supposed to hosted in production? As in, are there production
runners? I.e. what's the gunicorn of this area?


Answer: If Crossbar is running on the same machine that your application is, then you
can configure Crossbar to start it automatically.

Otherwise, `ApplicationRunner` is a convenience API, you can always do what it
does (start event loop, init the connections, etc) manually if you want. You
can check
[here](http://autobahn.ws/python/_modules/autobahn/twisted/wamp.html#ApplicationRunner)
for the source code to see exactly what all it does.

