FAQ
Threads
Prologue
supports two HTTP server: httpbeast
and asynchttpserver
. If you are in Linux or MacOS, use --threads:on
to enable the multi-threads HTTP server. If you are in windows, threads
should not be used. You can use -d:usestd
to switch to asynchttpserver
in Linux or MacOS.
Benchmarking and debug
If you want to benchmark prologue
or release your programs, make sure to set settings.debug
= false.
let
# debug attributes must be false
env = loadPrologueEnv(".env")
settings = newSettings(appName = env.getOrDefault("appName", "Prologue"),
debug = false,
port = Port(env.getOrDefault("port", 8080)),
secretKey = env.getOrDefault("secretKey", "")
)
or in .env
file, set debug = false
.
# Don't commit this to source control.
# Eg. Make sure ".env" in your ".gitignore" file.
debug=false # change this
port=8080
appName=HelloWorld
staticDir=/static
secretKey=Pr435ol67ogue
Disable logging
There are two ways to disable logging messages:
- set
settings.debug
= false - set a startup event
proc setLoggingLevel() =
addHandler(newConsoleLogger())
logging.setLogFilter(lvlInfo)
let
event = initEvent(setLoggingLevel)
var
app = newApp(settings = settings, startup = @[event])
Avoid using a function name which is same to the module name.
src/index.nim
Use the full path of JS, CSS files.
For instance in your HTML file use templates/some.js
instead of some.js
.
Run in async mode
The server can run in async mode, this is useful to perform other tasks beside accepting connections.