  We consider a system of $N$ identical server pools and a single dispatcher
where tasks arrive as a Poisson process of rate $\lambda(N)$. Arriving tasks
cannot be queued, and must immediately be assigned to one of the server pools
to start execution, or discarded. The execution times are assumed to be
exponentially distributed with unit mean, and do not depend on the number of
other tasks receiving service. However, the experienced performance (e.g. in
terms of received throughput) does degrade with an increasing number of
concurrent tasks at the same server pool. The dispatcher therefore aims to
evenly distribute the tasks across the various server pools. Specifically, when
a task arrives, the dispatcher assigns it to the server pool with the minimum
number of tasks among $d(N)$ randomly selected server pools. This assignment
strategy is called the JSQ$(d(N))$ scheme, as it resembles the power-of-$d$
version of the Join-the-Shortest-Queue (JSQ) policy, and will also be referred
to as such in the special case $d(N) = N$.
  We construct a stochastic coupling to bound the difference in the system
occupancy processes between the JSQ policy and a scheme with an arbitrary value
of $d(N)$. We use the coupling to derive the fluid limit in case $d(N) \to
\infty$ and $\lambda(N)/N \to \lambda$ as $N \to \infty$, along with the
associated fixed point. The fluid limit turns out to be insensitive to the
exact growth rate of $d(N)$, and coincides with that for the JSQ policy. We
further leverage the coupling to establish that the diffusion limit corresponds
to that for the JSQ policy as well, as long as $d(N)/\sqrt{N} \log(N) \to
\infty$, and characterize the common limiting diffusion process. These results
indicate that the JSQ optimality can be preserved at the fluid-level and
diffusion-level while reducing the overhead by nearly a factor O($N$) and
O($\sqrt{N}/\log(N)$), respectively.
