Troubleshooting the number of items that can be in transit
On the Content Manager side, you can configure how many items can be in transit. This number should not exceed the Content Deployer's ability to handle them.
You can calculate the total number of publish transactions that can be sent to the Content Deployer by taking the sum of the threads per Transport Service. Each Transport Service has its own number of threads, configured in the Transport Service Workers element in the TransportPriorityPoolSize attribute.
Overall, the number of threads you need to have available per Transport Service is the total number of destinations to which you publish at any one time, multiplied by two, and with one thread extra.
You can find out the total number of destinations by checking all destinations in all Business Process Types. So, for example, if you find out that users publish to 11 distinct destinations, your total number of Transport Service threads must be (2 * 11) + 1 = 23 threads.
If the number of items being sent by the Transport Service exceeds the number of items the Content Deployer can handle, the Transport Service becomes unable to handle the excess transactions.
If this is a temporary problem, it will resolve itself: the Transport Service waits and retries the transaction. If the same thing happens again, it waits again (longer now) and retries again, and so on, until a maximum allowable interval has been reached. Eventually, publishing should slow down and all outstanding transactions will be completed.
If the problem is structural, however, publishing will eventually grind to a halt.