Thanks for spending so much time on this mailing list, I know how hard
it can be.
I noticed you called for help for writting documentation, but realized I
needed to be able to code a full application with it before I could
So I'm going to start coding
That is of course welcome as well! Any feedback is welcome .. as is app coding ..
Got some questions regarding configuring the beast :
- What's "cpu_affinity"for and how does it compare to running several
nodes if you are looking for using several CPUs ? Can you dedicate CPUs
to certain components ?
Yep. Setting CPU affinity allows to "bind" a process (e.g. a Crossbar worker process or others) to one (or multiple given) CPU cores.
This is useful, since it avoids "cache trashing" .. it's performance optimization. When a OS process is not bound to a CPU, the OS is free to reschedule the process to run on different cores all the time. Which invalidates caches .. bad.
Crossbar will soon have the ability to scale on multi-core not only the app workers but also the router etc. And then we want to have that...
- what's "component.program" for ?
Please have a looked at
Note: this docs are still uncomplete (probably also a little out of date) .. Crossbar is moving fast .. I try to do my best to polish up the docs ..
- which part of the conf file defines component runnings inside the node
(so they must be non blocking) and component running as separate
processes (so they can block) ?
A Crossbar node has always a "node controller process". Nothing else runs inside that.
The "node controller" spawns background processes. Those can be different things, and whether they "block" internally or not isn't affecting the controller.
Now, a Python component host process is one of background process types. And such a process will host Python app components written using AutobahnPython .. and those should be non-blocking. They'll run under Twisted.
I also encountered a problem doing this :
The subpath should not contain leading or trailing slashes .. just tested with the attached config:
$ find .
Opening http://127.0.0.1:8080/static/ will render a 404.
What does "crossbar version" give you?
$ crossbar version
Crossbar.io software versions:
Crossbar.io : 0.9.2
Autobahn : 0.8.6
Twisted : 13.2.0-IOCPReactor
Python : 2.7.6
UTF8 Validator : wsaccel-0.6.2
XOR Masker : wsaccel-0.6.2
Indeed, if I go to http://127.0.0.1:8080/static/, I will get the
following error :
2014-03-24 01:03:50+0100 [Controller 11741] Unhandled error in Deferred:
2014-03-24 01:03:50+0100 [Controller 11741] Unhandled Error
Traceback (most recent call last):
What can cause this problem ? How can I get more verbosity to debug ? A
full stack trace ?
Good point! We need to make error conditions more transparent:
config.json (1.23 KB)
Am 24.03.2014 01:05, schrieb Michel Desmoulin:
You received this message because you are subscribed to the Google
Groups "Autobahn" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to autobahnws+...@googlegroups.com
For more options, visit https://groups.google.com/d/optout.