Next: Validation, Previous: Program, Up: Top [Contents][Index]
This system has maintenance concerns. 21
There isn’t much here yet. Maybe you can help?
The server22
is a RESTful service that serves as the HTTP server.
It is designed to run under Node.js,
motivated by the benefits of sharing code with the Client
(see Client).
The daemon is handled by the abstract Daemon
monolith,
which requires that a concrete #getEncryptionService
method be defined by a subtype or trait.
An example script to start the server is shown in Figure 8.1.
For local development, or to avoid use of any encryption service, use DevDaemon, which uses a dummy encryption service.
To start the server, invoke bin/server. You may also invoke bin/server.js directly using Node.js, but the use of is recommended, as it uses the Node.js executable determined at configure-time, along with any command-line options required for Liza Server to function correctly. Additional options can be provided to Node.js using the NODE_FLAGS environment variable, which will be appended to the configure-time flags. This environment variable is not escaped or quoted, so be mindful of word expansion.
$ bin/server -c path/to/config.json # providing additional options to node $ NODE_FLAGS=--debug bin/server -c path/to/config.json
Figure 8.1: Starting the Liza Server
The HTTP server is managed by http_server.
• Configuration: | Server configuration. | |
• Requests: | Handling HTTP requests. | |
• Posting Data: | Handling step saves and other posts. | |
• Server-Side Data API Calls: | Accessing external resources on the server. | |
• Encryption Service: | Managing sensitive data. |
The Daemon monolith and Server, among other things, need refactoring. Quote initialization code should be moved into ProgramInit.
Which may also be referenced as “quote server” in certain legacy contexts, referring to Liza’s origin as an insurance rating system.
Next: Validation, Previous: Program, Up: Top [Contents][Index]