... | @@ -19,6 +19,7 @@ your own client using the [[RPC API]]._ |
... | @@ -19,6 +19,7 @@ your own client using the [[RPC API]]._ |
|
* [Simple](#setup-simple)
|
|
* [Simple](#setup-simple)
|
|
* [Grid](#setup-grid)
|
|
* [Grid](#setup-grid)
|
|
* [Load balancing](#setup-grid-load-balancing)
|
|
* [Load balancing](#setup-grid-load-balancing)
|
|
|
|
* [Example](#setup-grid-load-balancing-example)
|
|
* [Line Aggregation](#setup-grid-line-aggregation)
|
|
* [Line Aggregation](#setup-grid-line-aggregation)
|
|
* [Example](#setup-grid-line-aggregation-example)
|
|
* [Example](#setup-grid-line-aggregation-example)
|
|
* [Mock example](#setup-grid-line-aggregation-mock-example)
|
|
* [Mock example](#setup-grid-line-aggregation-mock-example)
|
... | @@ -35,8 +36,32 @@ This will bind on `localhost:7331` by default. |
... | @@ -35,8 +36,32 @@ This will bind on `localhost:7331` by default. |
|
|
|
|
|
### <a id="setup-grid" href="#setup-grid">Grid</a>
|
|
### <a id="setup-grid" href="#setup-grid">Grid</a>
|
|
|
|
|
|
|
|
A grid is a network of interconnected Dispatchers which can be quite useful when
|
|
|
|
dealing with large workloads.
|
|
|
|
|
|
#### <a id="setup-grid-load-balancing" href="#setup-grid-load-balancing">Load balancing</a>
|
|
#### <a id="setup-grid-load-balancing" href="#setup-grid-load-balancing">Load balancing</a>
|
|
|
|
|
|
|
|
Load balancing is the default operation of the Grid; nomatter which member receives
|
|
|
|
the [dispatch](http://rubydoc.info/github/Arachni/arachni/Arachni/RPC/Server/Dispatcher#dispatch-instance_method) call, the Instance will be provided by the least burdened member.
|
|
|
|
|
|
|
|
This is completely transparent to the client and allows you to easily scale up
|
|
|
|
your operation by simply adding more Dispatchers to the Grid, as necessary.
|
|
|
|
|
|
|
|
##### <a id="setup-grid-load-balancing-example" href="#setup-grid-load-balancing-example">Example</a>
|
|
|
|
|
|
|
|
Starting the first Dispatcher:
|
|
|
|
|
|
|
|
arachni_rpcd --nickname="My Dispatcher" --address=192.168.0.1
|
|
|
|
|
|
|
|
Adding more in order to form a Grid:
|
|
|
|
|
|
|
|
arachni_rpcd --nickname="My second Dispatcher" --address=192.168.0.2 --neighbour=192.168.0.1:7331
|
|
|
|
|
|
|
|
Lather, rinse, repeat:
|
|
|
|
|
|
|
|
arachni_rpcd --nickname="My third Dispatcher" --address=192.168.0.3 --neighbour=192.168.0.2:7331
|
|
|
|
arachni_rpcd --nickname="My fourth Dispatcher" --address=192.168.0.4 --neighbour=192.168.0.3:7331
|
|
|
|
|
|
#### <a id="setup-grid-line-aggregation" href="#setup-grid-line-aggregation">Line aggregation</a>
|
|
#### <a id="setup-grid-line-aggregation" href="#setup-grid-line-aggregation">Line aggregation</a>
|
|
|
|
|
|
In order to connect the Dispatchers into a grid you'll need to:
|
|
In order to connect the Dispatchers into a grid you'll need to:
|
... | @@ -52,7 +77,7 @@ After that, they will build and maintain their network themselves. |
... | @@ -52,7 +77,7 @@ After that, they will build and maintain their network themselves. |
|
|
|
|
|
##### <a id="setup-grid-line-aggregation-example" href="#setup-grid-line-aggregation-example">Example</a>
|
|
##### <a id="setup-grid-line-aggregation-example" href="#setup-grid-line-aggregation-example">Example</a>
|
|
|
|
|
|
Running the first Dispatcher:
|
|
Starting the first Dispatcher:
|
|
|
|
|
|
arachni_rpcd --pipe-id="Pipe 1" --nickname="My Dispatcher" --address=192.168.0.1
|
|
arachni_rpcd --pipe-id="Pipe 1" --nickname="My Dispatcher" --address=192.168.0.1
|
|
|
|
|
... | @@ -63,7 +88,7 @@ Adding more in order to form a Grid: |
... | @@ -63,7 +88,7 @@ Adding more in order to form a Grid: |
|
Lather, rinse, repeat:
|
|
Lather, rinse, repeat:
|
|
|
|
|
|
arachni_rpcd --pipe-id="Pipe 3" --nickname="My third Dispatcher" --address=192.168.0.3 --neighbour=192.168.0.2:7331
|
|
arachni_rpcd --pipe-id="Pipe 3" --nickname="My third Dispatcher" --address=192.168.0.3 --neighbour=192.168.0.2:7331
|
|
arachni_rpcd --pipe-id="Pipe 4" --nickname="My forth Dispatcher" --address=192.168.0.4 --neighbour=192.168.0.3:7331
|
|
arachni_rpcd --pipe-id="Pipe 4" --nickname="My fourth Dispatcher" --address=192.168.0.4 --neighbour=192.168.0.3:7331
|
|
|
|
|
|
##### <a id="setup-grid-line-aggregation-mock-example" href="#setup-grid-line-aggregation-mock-example">Mock example</a>
|
|
##### <a id="setup-grid-line-aggregation-mock-example" href="#setup-grid-line-aggregation-mock-example">Mock example</a>
|
|
|
|
|
... | | ... | |