Groups | Blog | Home
all groups > sql server msde > march 2005 >

sql server msde : Governor limitations



FP
3/2/2005 12:55:46 AM
In some places I read the Governor has 5 max concurrent
connections;

In some other places I read it has 8 max concurrent
connections;

Andrea Montanari
3/2/2005 12:11:01 PM
hi FP,
[quoted text, click to view]

the real limit is 8 concurrent workloads (and not connections) as documented
in
http://msdn.microsoft.com/library/?url=/library/en-us/architec/8_ar_sa2_0ciq.asp?frame=true
--
Andrea Montanari (Microsoft MVP - SQL Server)
http://www.asql.biz/DbaMgr.shtm http://italy.mvps.org
DbaMgr2k ver 0.10.0 - DbaMgr ver 0.56.0
(my vb6+sql-dmo little try to provide MS MSDE 1.0 and MSDE 2000 a visual
interface)
--------- remove DMO to reply

Baudewijn Vermeire
3/2/2005 11:15:59 PM
I don't understand.
If you have SQL Server Standard with 5 CAL licenses configured.
Does that mean a max of 5 clients can login?
If you have MSDE installed, a max of 32000 clients can login?

regards
Baudewijn Vermeire

Andrea Montanari
3/3/2005 12:16:51 PM
hi Baudewijn,
[quoted text, click to view]

theoretically yes, but you have to keep in mind the other MSDE limits...
that's to say the Governor itself, kicking in when more then 8 concurrent
batches are executing...

more, each connection, live or sleeping, will eat about 24kb of memory,
calculated as 12 KB + 3 times the Network Packet Size (default setting that
can be partially customized via sp_configure system sotred procedure
modifying the 'user connections' setting), used to store the data structures
holding the connection 's context, as long as for buffer used to send and
receive the relative associated network streams (default to 4KB network
packet setting), that can be stolen from the buffer pool memory region
and/or the MemToLeave memory area... as these memory regions are not
infinite (:D) you will go out of resources long before the 32737 connections
limits on the 2gb memory wall of MSDE..

as you know, loosely speaking, SQL Server organizes it's memory allocation
in two distinct regions, the "buffer pool" (BPool) and the "memory to leave"
(MemToLeave) regions. (I'm excluding use of AWE because not supported at all
for MSDE and in order to provide easy understanding)
so... the BPool is the primary region SQL Server uses for it's internal
matter, while MemToLeave consists of the virtual memory space within the 1gb
user mode address space and the memory not used by the BPool.

when SQL Server starts, it begins calculating the upper limit the BPool can
reach... if no MaxMemory is set, this value will be set to the amount of the
physical memory or the size of the user mode address space (1gb) , minus the
size of the MemToLeave, whichever is less..

by default, MemToLeave is set to 384mb, 128mb of them are for worker thread
stacks and 256mb for allocation outside the BPool, such as memory for OLE-DB
providers, in process COM objects space and memory requirements and so on..
when MaxMemory value is explicitally set, this upper limit will only address
BPool region needs...
so only the address space of BPool pages is limited by this configuration
value, while SQL Server memory requirememts outside BPool allocation are not
limited this way...

as regards MSDE successor, SQLExpress, it will increase the 2gb datafile
limit to 4gb, remove the Workload Governor, but limite memory use to 1gb
only (thus the theoretical connection limit will actually decrease) and
limit the usable CPUs to 1
--
Andrea Montanari (Microsoft MVP - SQL Server)
http://www.asql.biz/DbaMgr.shtm http://italy.mvps.org
DbaMgr2k ver 0.10.0 - DbaMgr ver 0.56.0
(my vb6+sql-dmo little try to provide MS MSDE 1.0 and MSDE 2000 a visual
interface)
--------- remove DMO to reply

AddThis Social Bookmark Button