Nova API ↔ Placement Service: Does Shared Database Connection Pool Cause Latency Spikes Under Concurrent Requests?
18.5K reputation · 02 May 2022, 15:57 UTC
Goal: Determine whether latency spikes observed under concurrent Nova API requests stem from contention in the shared oslo.db connection pool used by both Nova API and Placement service, and whether adjusting the database max_pool_size relative to the total number of API workers eliminates the spike.
Constraints: The effect is documented for OpenStack releases Rocky and later; earlier versions may mask the symptom due to a different database driver. Accurate measurement requires isolating network and hardware factors, and the [database] max_pool_size must be set consistently in nova.conf and placement.conf to reflect the combined worker count of both services.
Questions: What is the minimum max_pool_size value that prevents latency spikes for a given combined worker count of Nova API and Placement? How does changing Nova API workers from eventlet‑based to a multi‑process WSGI server alter the latency‑pool size relationship? Does scaling Placement service workers independently of Nova API workers produce distinct latency patterns under the same load?