SQL Server Performance

Connection Pooling

Discussion in 'Non-Transact SQL Developer Performance Tuning' started by blinden, Aug 10, 2005.

  1. blinden New Member

    I have a question about connection pooling.

    We are running an ASP.NET site, and I have found a lot of information on connection pooling, like you can get connection pooling if you use the same connection string, you can specify the Max Connections (which we never did) and what not.

    We were recently stress testing a site of ours. We would put a load on the web servers (local) and everything seemed to work fine. If we tested one of our web servers, we would get about 800 requests a second, if we tested two we would get about 400 requests a second on both, if we tested three we would get about 260 requests a second. (Everything seems to cap off at about 800 requests a second)

    This baffled us because the servers seemed like they could handle more. Their processors were all at about 30%, memory is fine, and the database server was fine.

    My Question:
    Because they all use the same connection string, are they all sharing the same pool of connections? Does connection pooling take place on the Database Server, or the web server? Unfortunately I can run any tests right now, I just wanted to get your input on possible problems, solutions.

  2. joechang New Member

    i am not sure if the database server will share a connection between different servers using the same connection string,
    but this is not an issue for your scenario, the connection pooling in the usage decsribed above reduces the number of login/logouts (replace by a call to sp_resetconnection), which costs less than a full login/logout
    still, i would be careful of openning/closing connections on the web server for each individual call, because even the sp_resetconnection is not cheap.

    which server is at 30%, the web server or database?
    it sounds like your database can only handle 800/sec (or the network) and that each web server can drive more than 800, hence your results.

    what does each call to the database do?
  3. Twan New Member

    How are the network cards looking during the test? any other parts of the network between the test rig, and the servers or between the servers themselves?


Share This Page