aboutsummaryrefslogtreecommitdiff
path: root/src/zenserver/config.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/zenserver/config.cpp')
-rw-r--r--src/zenserver/config.cpp43
1 files changed, 41 insertions, 2 deletions
diff --git a/src/zenserver/config.cpp b/src/zenserver/config.cpp
index 7ec3a0cee..64acdfe73 100644
--- a/src/zenserver/config.cpp
+++ b/src/zenserver/config.cpp
@@ -793,11 +793,22 @@ ParseConfigFile(const std::filesystem::path& Path,
LuaOptions.AddOption("server.objectstore.buckets"sv, ServerOptions.ObjectStoreConfig);
////// network
- LuaOptions.AddOption("network.httpserverclass"sv, ServerOptions.HttpServerClass, "http"sv);
+ LuaOptions.AddOption("network.httpserverclass"sv, ServerOptions.HttpServerConfig.ServerClass, "http"sv);
+ LuaOptions.AddOption("network.httpserverthreads"sv, ServerOptions.HttpServerConfig.ThreadCount, "http-threads"sv);
LuaOptions.AddOption("network.port"sv, ServerOptions.BasePort, "port"sv);
LuaOptions.AddOption("network.websocket.port"sv, ServerOptions.WebSocketPort, "websocket-port"sv);
LuaOptions.AddOption("network.websocket.threadcount"sv, ServerOptions.WebSocketThreads, "websocket-threads"sv);
+ LuaOptions.AddOption("network.httpsys.async.workthreads"sv,
+ ServerOptions.HttpServerConfig.HttpSys.AsyncWorkThreadCount,
+ "httpsys-async-work-threads"sv);
+ LuaOptions.AddOption("network.httpsys.async.response"sv,
+ ServerOptions.HttpServerConfig.HttpSys.IsAsyncResponseEnabled,
+ "httpsys-enable-async-response"sv);
+ LuaOptions.AddOption("network.httpsys.requestlogging"sv,
+ ServerOptions.HttpServerConfig.HttpSys.IsRequestLoggingEnabled,
+ "httpsys-enable-request-logging"sv);
+
////// trace
LuaOptions.AddOption("trace.host"sv, ServerOptions.TraceHost, "tracehost"sv);
LuaOptions.AddOption("trace.file"sv, ServerOptions.TraceFile, "tracefile"sv);
@@ -1037,10 +1048,17 @@ ParseCliOptions(int argc, char* argv[], ZenServerOptions& ServerOptions)
"",
"http",
"Select HTTP server implementation (asio|httpsys|null)",
- cxxopts::value<std::string>(ServerOptions.HttpServerClass)->default_value(DefaultHttp),
+ cxxopts::value<std::string>(ServerOptions.HttpServerConfig.ServerClass)->default_value(DefaultHttp),
"<http class>");
options.add_option("network",
+ "",
+ "http-threads",
+ "Number of http server connection threads",
+ cxxopts::value<unsigned int>(ServerOptions.HttpServerConfig.ThreadCount),
+ "<http threads>");
+
+ options.add_option("network",
"p",
"port",
"Select HTTP port",
@@ -1061,6 +1079,27 @@ ParseCliOptions(int argc, char* argv[], ZenServerOptions& ServerOptions)
cxxopts::value<int>(ServerOptions.WebSocketThreads)->default_value("0"),
"");
+ options.add_option("httpsys",
+ "",
+ "httpsys-async-work-threads",
+ "Number of HttpSys async worker threads",
+ cxxopts::value<unsigned int>(ServerOptions.HttpServerConfig.HttpSys.AsyncWorkThreadCount),
+ "<httpsys workthreads>");
+
+ options.add_option("httpsys",
+ "",
+ "httpsys-enable-async-response",
+ "Enables Httpsys async response",
+ cxxopts::value<bool>(ServerOptions.HttpServerConfig.HttpSys.IsAsyncResponseEnabled)->default_value("true"),
+ "<httpsys async response>");
+
+ options.add_option("httpsys",
+ "",
+ "httpsys-enable-request-logging",
+ "Enables Httpsys request logging",
+ cxxopts::value<bool>(ServerOptions.HttpServerConfig.HttpSys.IsRequestLoggingEnabled),
+ "<httpsys request logging>");
+
#if ZEN_WITH_TRACE
options.add_option("ue-trace",
"",