Crossbar Architecture Introduction

#1

Hi,

I have added a chapter on Crossbar's architecture to the Wiki

https://github.com/crossbario/crossbar/wiki/Architecture

This features a couple of diagrams that hopefully help undestanding the multi-process architecture of Crossbar ..

Cheers,
/Tobias

0 Likes

#2

Hi Tobias,

I did some small editing on the Routers and Component hosts sections. But since I’m quite a newby, I’m worried that I might have misinterpreted some concepts and are spreading misinformation, so your review would be highly welcome.

Some more things to note on the page:

  • there is some repetition on explaining Routers, Component container, Worker processes. Some grouping might be welcome.
  • are component hosts and component containers the same thing?
  • can 1 WAMP Container host multiple application components, or are they meant to host just 1 application component
  • for Guests the same question: is it a 1:1 relation (easier to reason about, I guess) or 1:N
  • The scale-out section would probably be better of with two diagrams (two nodes) next to each other

Best regards,

Roger

···

Op dinsdag 17 juni 2014 18:20:34 UTC+2 schreef Tobias Oberstein:

Hi,

I have added a chapter on Crossbar’s architecture to the Wiki

https://github.com/crossbario/crossbar/wiki/Architecture

This features a couple of diagrams that hopefully help undestanding the
multi-process architecture of Crossbar …

Cheers,

/Tobias

0 Likes

#3

Hi Roger,

Hi Tobias,

I did some small editing on the Routers and Component hosts sections.
But since I'm quite a newby, I'm worried that I might have
misinterpreted some concepts and are spreading misinformation, so your
review would be highly welcome.

I've checked the diff .. looks good!

Some more things to note on the page:

  * there is some repetition on explaining Routers, Component container,
    Worker processes. Some grouping might be welcome.

Makes sense. If you want to, feel free to edit. Don't worry about "breaking" things .. the Wiki is fully under Git, so we can always rollback.

The only thing: if you are unsure whether the edit reflects "correct" information, pls ask for review .. exactly as you did already.

  * are component hosts and component containers the same thing?

Crossbar.io (as a server) can "host" application components. In this sense, _Crossbar.io_ is a WAMP "component host".

There are 3 options to host application components in Crossbar.io:

- via a "router" worker, running the component embedded
- via a "container" worker
- via a "guest" worker

A "router" or "container" worker can "host" multiple _Autobahn|Python_ based WAMP application components.

A "guest" worker will often be used to "host" WAMP application components written using something other than AutobahnPython.

  * can 1 WAMP Container host multiple application components, or are
    they meant to host just 1 application component

This is no (longer) as restriction: containers can host multiple AutobahnPython-based components (inside the same worker process).

[Formerly, only "routers" could host multiple components]

  * for Guests the same question: is it a 1:1 relation (easier to reason
    about, I guess) or 1:N

A "guest" from Crossbar.io point of view is just an arbitrary program.

To be useful, that program will usually connect to a router. And that router will usually run inside the same node.

Whether there is 1 or multiple components running inside the guest is not under control of and not visible to Crossbar.io.

This is different from the worker type "container": which is a _native_ Python process, which "knows" about what a single (Python) component is, can host multiple such (Python) components.

"containers" also expose a whole management API (via WAMP). Guests don't have that.

  * The scale-out section would probably be better of with two diagrams
    (two nodes) next to each other

Good idea! I'll do that ..

Cheers,
/Tobias

···

Am 30.06.2014 15:25, schrieb Roger Erens:

Best regards,

Roger

Op dinsdag 17 juni 2014 18:20:34 UTC+2 schreef Tobias Oberstein:

    Hi,

    I have added a chapter on Crossbar's architecture to the Wiki

    https://github.com/crossbario/crossbar/wiki/Architecture
    <https://github.com/crossbario/crossbar/wiki/Architecture>

    This features a couple of diagrams that hopefully help undestanding the
    multi-process architecture of Crossbar ..

    Cheers,
    /Tobias

--
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
<mailto:autobahnws+...@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout.

0 Likes