IntroductionIntroduction
  InstallingInstalling
  HandlingHandling
    <User interface>User interface<User interface>User interface
    <Restarting>Restarting<Restarting>Restarting
    <Threads>Threads<Threads>Threads
    <Log files>Log files<Log files>Log files
    <Status>Status<Status>Status
    <Maintenance>Maintenance<Maintenance>Maintenance
  Virtual serversVirtual servers
  ModulesModules
  FilesystemsFilesystems
  RXML tagsRXML tags
  GraphicsGraphics
  ProxyProxy
  Miscellaneous modulesMiscellaneous modules
  Security considerationsSecurity considerations
  ScriptingScripting
  DatabasesDatabases
  LDAPLDAP
  FrontPageFrontPage
  UpgradingUpgrading
  Third party extensionsThird party extensions
  PortabilityPortability
  Reporting bugsReporting bugs
  AppendixAppendix
 
Threads

Challenger can use threads on operating systems that support them. When using threads several requests can be handled in parallel. The main advantage of this is that requests that take a long time to process will not block the server, and other requests will be served even if a previous request is still being processed. It is therefore recommended that you run with threads on all operating systems that supports it.

However, the speed gained by running with threads is usually limited. Most requests to a Challenger server take a very short time to handle, and such requests gain next to nothing by running in parallel. One exception is pages served over NFS from another computer. Fetching data over NFS is a slow, blocking operation, thereby benefiting from being able to run in parallel.

On multi-CPU machines the worst case scenario is that the overhead for thread synchronization makes the performance worse when using threads than when not using threads.

The number of threads Challenger will use is configured in the Global Variables/Number of threads to run variable. To disable threads altogether use the --without-threads option to the start -script.

Note that even if Challenger only uses one thread, modules can create threads for themselves, if they intend to do something that will take a long time.