distl/dials apache server

Introduction

Follow these instructions to install an apache webserver configured to run the distl and dials spotfinders. For more information on the distl spotfinder server, see http://cci.lbl.gov/labelit/html/client_server.html. The version described here allows the beamline operator to use either distl or the dials spotfinder to assess the quality of single images, typically during a raster scan of a crystal cluster. Use of the apache server allows automatic load balancing and scaling of many parallel requests, typical for a high throughput environment.

These instructions were valid on 06/07/16 on CentOS 7 using apache version 2.4.20, mod_python version 3.5.0 and the apache dependencies ‘apr’, version 1.5.2 and ‘apr-util’, version 1.5.4.

Build instructions

These instructions include downloading apache directly from their webpage. The apache maintainers ask that users use a mirror. Your closest mirror can be found by visiting this web page: http://www.apache.org/dyn/closer.cgi/httpd

Detailed instructions:

The following command will download, configure and compile cctbx, distl and dials, then configure, build and install apache, its dependencies, and mod_python. This takes about an hour.

  • ./apache/apache_install_dials.csh

After the build is complete, instructions for starting the server and testing it will be displayed. You may also want to modify the processor defaults stored in the mpm_prefork_module key in apache/httpd/conf/extra/httpd-mpm.conf to better suit your server capabilities.

Distl parameters

distl.image: path to file on disk.

Further parameters matching the name/value pairs used by distl are described here: http://cci.lbl.gov/labelit/html/spotfinder.html

Dials parameters

file_name: path to file on disk

frame_number: for multi-file data, such as Eiger data from Dectris detectors, this indicates which frame number to analyze.

stats: True or False. If True, reports detailed spotfinding statistics such as resolution estimates.

Further parameters matching the name/values pairs used by the dials spotfinder are described under dials.find_spots.