Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • A arachni
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 125
    • Issues 125
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 8
    • Merge requests 8
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Arachni - Web Application Security Scanner Framework
  • arachni
  • Wiki
  • Guides
  • User
  • Distributed components

Distributed components · Changes

Page history
Updated Distributed-components (markdown) authored Apr 10, 2013 by Tasos Laskos's avatar Tasos Laskos
Hide whitespace changes
Inline Side-by-side
guides/user/Distributed-components.md
View page @ cee3e112
# Distributed components (Dispatchers and Instances)
Let's start with the definitions:
## Instance
An **_Instance_** is a scanner server which can be operated via a remote procedure call protocol -- simple enough.
## [[Dispatcher | RPC-Server]]
A **_Dispatcher_** is a server which provides clients with _Instances_.
Its main job is to maintain a pool of _Instances_ and whenever a clients issues
a _dispatch_ call to pop one from the pool and give its connection details to the client.
Just as importantly, it's responsible for never letting the pool deplete by replenishing it after every _dispatch_ call.
Its main job is to maintain a pool of _Instances_ and whenever a clients issues a _dispatch_ call
to pop one from the pool and give its connection details to the client.
Just as importantly, it's responsible for never letting the pool deplete by replenishing it after
every _dispatch_ call.
The aforementioned connection details include the URL of the Instance (_host:port_) and its authentication token,
you can imagine what happens after that.
The aforementioned connection details include the URL of the Instance (_host:port_) and its
authentication token, you can imagine what happens after that.
Both servers use the same RPC protocol, [Arachni-RPC](https://github.com/Arachni/arachni-rpc),
but they, of course, have different [APIs](https://github.com/Arachni/arachni/wiki/RPC-API).
**Notice**
The above is the simple version, in reality both the Instance and Dispatcher servers
are much more elaborate systems; more about that in the [[High Performance Grid | HPG]] section.
Clone repository

Pages [all]


  • Home
  • Installation instructions
  • For users
    • Executables
    • Command Line Interface
    • Web User Interface
    • Distributed components (Dispatchers and Instances)
      • RPC Client
      • RPC Server (Dispatcher)
  • For developers
    • Coding guidelines
    • Core API documentation
    • RPC API
    • Development environment

Can't find what you're looking for? Why not have a look at the support portal?