feat: add multi-engine regex flavour support
This commit is contained in:
@@ -19,12 +19,23 @@ supervisor wall clock, and cancellation discards the complete worker heap.
|
||||
Python has a materially larger cold start because its worker loads the
|
||||
self-hosted Pyodide JavaScript/WebAssembly runtime and Python standard library
|
||||
before verifying CPython and `re`. Java imports and self-tests its bundled
|
||||
TeaVM ES module. Engine loading is an explicit operation with a
|
||||
flavour-specific startup deadline; it is not charged to the 250 ms live or
|
||||
selected manual execution timeout. Warm requests reuse the verified worker.
|
||||
Killing a worker for timeout, crash or cancellation discards its complete
|
||||
runtime, so the next request pays the cold-load cost and verifies identity
|
||||
again.
|
||||
TeaVM ES module. Scala compatibility shares that Java module and does not load
|
||||
a second runtime.
|
||||
|
||||
PHP, legacy Perl, Ruby, Go, Rust, C++ and .NET likewise load only when first
|
||||
selected. Their cold cost differs substantially: PHP, Perl, Ruby and .NET
|
||||
instantiate larger language/runtime packs; Go includes its standard
|
||||
WebAssembly runtime; Rust and C++ are comparatively compact native modules.
|
||||
The UI reports loading separately rather than charging it to the 250 ms live or
|
||||
selected manual execution timeout.
|
||||
|
||||
Warm requests reuse a verified worker. To prevent profile exploration from
|
||||
leaving every large runtime resident, the supervisor uses a two-worker
|
||||
retention target and evicts the least recently used idle generation before it
|
||||
creates another profile worker. An active request is never evicted, so
|
||||
concurrent active work can temporarily exceed the target. Killing or evicting
|
||||
a worker discards its complete runtime, so the next request pays the cold-load
|
||||
cost and verifies identity again.
|
||||
|
||||
Automatic-callout tracing is deliberately excluded from every benchmark. It
|
||||
compiles an independently instrumented PCRE2 pattern in a separate worker and
|
||||
|
||||
Reference in New Issue
Block a user