Skip to main content

Practice · 1 of 2

Connection pool budget

CHALLENGE
Difficulty: advanced+25 XP

A pool of size P serving concurrent requests: requests hold a connection for holdMs milliseconds. Implement static int MaxConcurrentWithin(int poolSize, int requests, int holdMs, int windowMs) = how many of requests can be in-flight simultaneously given poolSize connections (min(poolSize, requests)), and static double Utilization(int poolSize, int requests, int holdMs, int windowMs) = MaxConcurrentWithin × holdMs / windowMs × 100, rounded to 2 decimals. Then static bool WillStarve(int poolSize, int requests, int holdMs, int windowMs) = true when requests > poolSize.

Back to lesson: Practice: Data access drills