...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
SoftwareServer.conf: #BatchScripts=scripts/bat #ShellScripts=/home/polyglot/scripts/sh #RScripts=scripts/R #AHKScripts=scripts/csr-configured #AppleScripts=scripts/applescript #SikuliScripts=scripts/sikuli PythonScripts=scripts/py $ grep -v ^# */.aliases.txt ahk/.aliases.txt:A3DReviewer ahk/.aliases.txt:ImgMgk ahk/.aliases.txt:IrfanView py/.aliases.txt:demclip_convert.py py/.aliases.txt:streamclip_convert.py R/.aliases.txt:PEcAn sh/.aliases.txt:avconv-audio sh/.aliases.txt:avconv-video |
Implementation Details
Both Polyglot and softwareserver SS are implemented in Java, currently using Restlet. Current configuration files are:
...
Softwareserver job checkin is in SoftwareServerRESTUtilities.java, Polyglot accessing RabbitMQ part is in polyglot/PolyglotStewardAMQ.java.
- When Polyglot starts, it does:
- read the configuration file;
- start the PolyglotStewardAMQ thread;
- start a thread to update Mongo; call PolyglotRESTUtilities.updateMongo(). By default updates every 2 sec.
- start the restlet service.
- When PolyglotStewardAMQ thread starts, it starts 3 threads:
- discoveryAMQ(), every 30 s.
- process_jobs(), every 3 s,
- heartbeat(), to remove unresponsive SSs. every Heartbeat secs, default to 10 s.
- Two queryEndpoint() methods.
In SoftwareServerRESTUtilities.java: returns pure text; in PolyglotStewardAMQ.java, returns json.
Installation of Required Software Packages on Ubuntu Trusty (14.04)
Need to install the programs used in Softwareserver scripts:
...