wiki:ServerComponents

Version 4 (modified by Nicolas, 17 years ago) (diff)

Formatting, and a currently hidden addition

What is a project?

A BOINC project consists of the following components:

Multiple BOINC projects can exist on the same host. This can be handy for creating separate projects for testing and debugging.

The easiest way to create a project is with the make_project script, which creates all the above components.

A project must be stopped when maintenance activities (e.g. changing the configuration file or database) are being performed. This is done using project control scripts.

The master URL

Each project is publicly identified by a master URL. The master page at this URL has two functions.

  • It is the home page of the project; when viewed in a browser it describes the project and contains links for registering and for downloading the core client.
  • It contains XML elements of the form
    <scheduler>http://host.domain.edu/cgi/scheduler</scheduler>
    <scheduler>http://host2.domain.edu/cgi/scheduler</scheduler>
    
    that give the URLs of the project's scheduling servers. These tags can be embedded within HTML comments. The BOINC core client reads and parses the master page to locate scheduling servers. If at any point it is unable to connect to any scheduling server for a project, it rereads the master page. This mechanism lets a project move or add scheduling servers.

The make_project script creates a master page in project/html/user/index.php. This file includes the file 'schedulers.txt', which contains the list of <scheduler> elements.