Store serialized core in runtime cache
This commit is contained in:
parent
ee2177f4b4
commit
93c701c6c7
@ -140,7 +140,10 @@ changing core-first, unit-load-order symbol resolution.
|
||||
Each FastCGI child initializes its process-local Wasmtime engine after fork and
|
||||
before entering the accept loop. This preserves Wasmtime's fork boundary while
|
||||
preventing the first request assigned to each worker from paying engine startup.
|
||||
Startup duration or failure is written to the service log.
|
||||
Startup duration or failure is written to the service log. The serialized core
|
||||
module lives in the configured writable cache root rather than beside the
|
||||
possibly root-owned deployed `core.wasm`; freshness still uses the deployed
|
||||
artifact's metadata.
|
||||
|
||||
`request_perf()` reports worker module-cache hits and misses and divides a miss
|
||||
into artifact lookup, wasm read, custom-section parse, serialized-module
|
||||
|
||||
@ -886,7 +886,9 @@ public:
|
||||
if(!wasm_parse_sections(bytes, core_dylink, abi_ignored, parse_error))
|
||||
return("core module: " + parse_error);
|
||||
|
||||
String core_cached_path = cached_wasm_path(cfg.core_wasm_path);
|
||||
// Deployed runtime sources can be root-owned while workers run unprivileged.
|
||||
// Keep the derived serialized core in the configured writable cache root.
|
||||
String core_cached_path = path_join(cfg.cache_root, ".uce-core.cwasm");
|
||||
String compile_error;
|
||||
bool serialized_cache_hit = false;
|
||||
auto compiled_or_cached = load_or_compile_cached_module(engine, core_cached_path, cfg.core_wasm_path, bytes, compile_error, serialized_cache_hit);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user