wiki:ConfigurableJobServer

Version 2 (modified by manualwiki, 12 years ago) (diff)

--

Configurable Job Server

About the job server

A job server is is an application server used to take control the arriving requests.

The concept is similar to the 'Readers-writers problem'. If a new request is arrived to the server, the type of the request has to be determined. It can be a modifier or a non-modifier. If a request modify the database, then it is called modifier, else it is called non-modifier. After the type of the request has been determined, the permission of the execution should be limited, as described below. A modifier can only be executed when nothing else is running. A non-modifier can only not be executed when a modifier is running.

How to restrict the enabled user-level operations?

The blacklist is a list of denied operations. These operations can not be allowed to be run in any circumstances. The blacklist is loaded from a file, which is placed in data directory, is called ui_router_blacklist and is processed with file:consult, during the initialization of the job server.

A valid blacklist for example:

[add, drop, reset, add_dir, drop_dir]. 

If this blacklist is present, then nobody can add to / can delete anything from the database and nobody can reset the database.