Azure SQL Database

Fernando Gutierrez 305 Reputation points
2025-04-22T18:37:23.13+00:00

Hello

Dear

Question: I had to increase the tier of a SQL database in Azure because it was in a premium Elastic Pool tier, but I was getting errors indicating that it was reaching 40 or 50 concurrent connections.

I placed it in a Standard DTU tier with 50 DTUs. I want to know if the number of concurrent connections is sufficient with this tier? Or rather, how many concurrent connections can it reach with this tier of 50 DTUs or 100 DTUs?

Thank you.

SQL Server on Azure Virtual Machines
{count} votes

1 answer

Sort by: Most helpful
  1. Adithya Prasad K 750 Reputation points Microsoft External Staff
    2025-04-22T18:58:46.5433333+00:00

    Hi @ Fernando Gutierrez,
    I apologize for any confusion caused by the earlier closure of this thread as a duplicate, and I appreciate your patience.
    I understand your concern about whether a Standard DTU tier—such as one offering 50 or 100 DTUs—provides sufficient capacity for the concurrent connections your workload requires.

    It’s important to note that Azure SQL Database doesn’t enforce a strict, fixed limit on the number of concurrent connections based solely on the DTU level. In other words, you won’t find a rule like “50 DTUs equals 50 connections” or “100 DTUs equals 100 connections.” Instead, the DTU model provides an overall pool of resources (CPU, memory, and I/O) that must service all active sessions and requests.

    Here are a few key points to consider:

    Workload Characteristics vs. Connection Count: While a database can technically maintain many connections, the performance of each connection is determined by how much work it’s doing. Idle connections or those executing lightweight queries have a minimal impact, but resource-intensive queries can quickly consume available DTU capacity. The errors you observed on the premium Elastic Pool suggest that the connections were likely consuming more resources than the service tier could comfortably handle at that moment.

    The Role of Connection Pooling: It is generally advisable to implement connection pooling. This practice helps manage connections efficiently by reusing active sessions rather than creating brand-new ones for every request. With pooling, even if multiple logical connections are made, the physical open connections can be kept to a manageable number that the available DTUs can support.

    Moving from 50 to 100 DTUs: Upgrading from 50 to 100 DTUs effectively doubles your resource pool, which can allow your database to handle more active, resource-demanding requests concurrently. However, it isn’t as simple as doubling the “number” of connections; rather, it increases the overall capacity for processing the workload that those connections generate. The actual number of connections you can support effectively will depend on the complexity and resource demands of the queries they run.

    In summary, the DTU model is not about a fixed headcount of concurrent connections but about the total workload that your set of connections imposes on the system. If your application is reaching resource limits at 40 or 50 active connections, you may benefit from connection pooling or performance tuning. Upgrading to 100 DTUs will provide more capacity, but it’s essential to monitor how each connection impacts overall resource usage.

    I hope this helps clarify your concerns. Please feel free to reach out if you need any further details or assistance with optimizing your connection management and performance.

    If this answers your query, do click "Accept the answer” for the same, which might be beneficial to other community members reading this thread. And, if you have any further query do let us know.  
    User's image, Picture

    1 person found this answer helpful.

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.