You generally can block more in Phoenix than in say, Rails. You can have hundreds if not thousands concurrent connections and Phoenix will just wait very efficiently on I/O.
It gets slightly more hairy if the I/O you are waiting for is a database call. Then, you will reach the number of connections in the pool and the other requests will block.
The same can happen if you are using a HTTP client to do that order_status call that has a fixed upper limit on number of workers.
But in principle it’s more fine than in many other environments.