Use Ruby's SizedQueue and a fixed worker pool to cap memory and apply backpressure in producer-consumer pipelines, with explicit error handling and clear boundaries for shared mutable state.
Requests hang while CPU idles? That's Tomcat's Connector thread pool exhausted, usually by threads blocked downstream. A diagnostic path from thread dumps to the right fix.
Virtual threads (JEP 444) let you keep blocking I/O code while scaling to tens of thousands of concurrent requests. This blog covers the mechanics, a fan‑out example, and the pinning, ThreadLocal, and pooling trade‑offs.
Learn how to tune the Tomcat Executor to prevent CPU exhaustion and connection refusals. This guide covers maxThreads, acceptCount, and the risks of thread starvation.
I am trying to understand a latency pattern in Elasticsearch search requests that only appears when many clients query at once. Single-request latency looks fine, but as concurrency rises, response times grow roughly in proportion to load rather than staying flat. My understanding is that the search thread pool uses a fixed number of threads with an effectiv
Goal: shrink the memory footprint of a low-traffic Tomcat deployment enough to fit a cheaper hosting tier, by tuning the HTTP Connector's documented thread-pool limits rather than the heap alone. Two documented mechanisms are in play. The connector exposes maxThreads (long-standing default 200) and minSpareThreads (default 10), and worker threads reserve JVM