2016-06-08 33 views
7

ho copiato la stringa di connessione da Azure database come di seguito:Perché Azure stringa di connessione al database di default ha Pooling = False

enter image description here

E vedo per impostazione predefinita, Azure stringa di connessione al database ha Pooling=False

Server = tcp: {your_server} .database.windows.net, 1433; Data Source = ra-labs-01.database.windows.net; Catalogo iniziale = {your_database}; Persist Security Info = False; ID utente = {your_username }; password = {} your_password; pooling = false; MultipleActiveResultSets = false; Encrypt = true; TrustServerCertificate = False; Timeout connessione = 30;

Ciò mi rende un po 'confuso poiché la mia attuale comprensione è Pooling=False non è raccomandata.

Quindi, per impostazione predefinita, la stringa di connessione ad Azure disabilita il pool di connessioni o perché ho inserito il mio database nel pool Elastic?

+1

L'ho appena visto e non ha alcun senso. Di default Pooling e MARS sono disabilitati. –

+2

Avrò aggiornato il portale di Azure. Il valore predefinito e consigliato per Pooling è "true"; tuttavia, il valore predefinito e consigliato per MARS è "false". –

risposta

1

SQL di Azure supporta i pool di connessione nei database standard e nei pool elastici. Penso che se lo vedessi, probabilmente non era inteso perché nessuno dei miei account mostra questa impostazione per impostazione predefinita. Puoi vedere le linee guida per azure connections sul sito web principale. A differenza di un server on-site, è possibile che si verifichino connessioni più chiuse a causa della latenza e della natura di Internet pubblica, tuttavia questo viene mitigato con transient fault handling nelle versioni successive di ado.net e altri framework di connessione. Questa tecnologia consente di riprovare le connessioni interrotte o interrotte senza che il programma debba rispondere direttamente. I programmi che gestiscono le connessioni in modo efficiente potrebbero vedere alcuni miglioramenti con il pool di connessioni.

Per quanto riguarda MARS (Multiple Active Result Sets) questo è un protocollo molto chiacchierone e mentre è possibile attivarlo influirà sulla latenza e sul tempo di risposta. Non è consigliabile utilizzarlo con Azure SQL.