rhbz988202 Reduce default for max concurrent active requests to 2
Use try-finally to ensure that active Semaphore is always released if acquired

Also ensure that we release the same Semaphore we acquired.