Aracılığıyla paylaş


Bağlantı yeniden deneme algoritması (TCP/IP bağlantıları için)

Microsoft Windows xp çalıştıran istemci veya daha sonra her iki ortak adları önbellekte olduğunda, veri erişim, bir TCP/IP bağlantısı için sağlayıcı bir bağlantı yeniden deneme algoritması bağlı kalır.Bu doğrudur ilk bağlantı yapmak için her ikisi de oturum ve kurulan bir bağlantı kaybettikten sonra yeniden bağlanıyor.Bir bağlantı açıldıktan sonra pre-login ve oturum açma adımları ek alır saat.

Not

Etki alanı denetleyicisi/Kerberos Anahtar Dağıtım Merkezi (kdc) bağlantısı yavaş dns aramaları gibi dış etkenler nedeniyle yeniden deneme saati aşan açılış için harcanan süre yavaş, başvur sql Server Gözatıcısı, ağ tıkanıklığı vb. harcanan saat.Gibi dış etkenler, bir istemci, yansıtılmış bir veritabanına bağlanmasını engelleyebilir.Ayrıca, bir bağlantı ayrılan yeniden deneme uzun sürer dış etkenler neden olabilir saat.İlk ortak bağlantı girişimi için dns ve sql Server Gözatıcısı atlayarak hakkında bilgi için bkz: Bir veritabanı oturumu yansıtma için başlangıç bağlantı yapma.

Bağlantı girişimi başarısız veya başarılı önce yeniden deneme saat sona ermeden, diğer ortak veri erişim sağlayıcı çalışır.Bu nokta bir bağlantı açıldığında, sağlayıcı bir bağlantı açılır veya oturum açma süresi zaman aşımına kadar dönüşümlü olarak başlangıç ve yerine çalışma ortak adı çalışır.Varsayılan oturum açma saat aşımı saat 15 saniyedir.Oturum açma saat aşımı saat en az 5 saniye olun öneririz.Daha küçük bir saat aşımı saat belirleme herhangi bir bağlantı girişimleri işleminin başarılı olmasını engelleyebilir.

Yeniden deneme saat oturum süre yüzdesidir.Bağlantı girişimi için yeniden deneme saat, birbirini izleyen her turda büyük.İlk turda yüzde 8 her iki girişimi için yeniden deneme saat olan toplam oturum açma saat.Birbirini izleyen her turda yeniden deneme algoritması en fazla deneme saat aynı oranda artar.Bu nedenle, yeniden deneme süreleri ilk sekiz bağlantı girişimleri değeri aşağıdaki gibidir:

8%, 8%, 16%, 16%, 24%, 24%, 32%, 32%

Yeniden deneme saat aşağıdaki formül kullanılarak hesaplanır:

RetryTime**=PreviousRetryTime+(** 0.08 *LoginTimeout)

Burada PreviousRetryTime ise başlangıçta 0.

Örneğin, varsayılan oturum açma saat aşımı saat 15 saniyelik kullanarak, LoginTimeout 15 =.Bu durum, ilk üç yuvarlar ayrılan yeniden deneme süreleri aşağıdaki gibidir:

Round

RetryTime hesaplama

Yeniden deneme saat başına girişimi

1

0 +(0.08 * 15)

1,2 saniye

2

1.2 +(0.08 * 15)

2,4 saniye

3

2.4 +(0.08 * 15)

3,6 saniye

4

3.6 +(0.08 * 15)

4,8 saniye

Bunlar aşağıdaki şekilde gösterilmiştir her biri zaman aşımına art arda gelen bağlantı girişimleri için defa deneyecek.

15 saniye oturum açma zaman aşımı için en fazla yeniden deneme gecikmeleri

Varsayılan oturum açma saat aşımı süresini, bağlantı girişimleri, ilk üç yuvarlar ayrılan en uzun süre 14.4 saniyedir.Her girişimi tüm onun ayrılan süre kullanmanız gerekirse, oturum açma dönem saat aşımına önce yalnızca 0,6 saniye süre kalır.durum, Dördüncü turda, ilk ortak adı kullanarak bağlanmak yalnızca bir son hızlı girişimi vererek curtailed.Ancak, özellikle de daha sonra yuvarlar, ayrılan yeniden deneme saat en çok bir bağlantı girişimi başarısız olabilir.Örneğin, bir ağ hatası alma girişimi yeniden deneme saat sona ermeden önce sona erdirmek neden olabilir.Bir ağ hatası nedeniyle, ek önceki girişimleri başarısız olursa saat yuvarlak ve belki de, dördüncü için kullanılabilir olacaktır ek yuvarlar.

Bir başka nedeni de başarısız girişimi bir sunucu örnek üzerinde kendi veritabanı başarısız ilgilendiğini ortaya çıkar gibi bir etkin sunucu örneğidir.Bu durum, istemcileri gelen bağlantı girişimleri, hızlı bir şekilde art arda ortaklarıyla aşırı önlemek için yeniden deneme gecikmesi nedeniyle belirlenmiştir.

Not

İki ortağın adı, oturum açma saat aşımı sonsuzdur, kullanılabilir olduğunda istemci sunucuya bağlanmayı sonsuza kadar ilk ortak adı ve yerine çalışma ortağı adı arasında değişen çalışır.

Yerine çalışma sırasında gecikmeler yeniden dene

Bir istemci üzerinden başarısız olan bir ortağa bağlanmaya çalışırsa, ortak etkin olmadığını hemen yanıtlar.Bu durumda, bağlantı denemeleri her turda ayrılan yeniden deneme çok briefer saat.Yani, bağlantı girişimleri, birçok yuvarlar dönem oturumu zaman aşımına önce oluşabilir.Veri erişim sağlayıcı ortaklarıyla bağlantı girişimleri hızlı bir dizi yerine çalışma sırasında aşırı yüklenmesini önlemek için her yeniden deneme döngüsü kısa bir yeniden deneme gecikmesi ekler.Verilen yeniden deneme gecikmesi yeniden deneme gecikmesi algoritması tarafından belirlenir.Sonra ilk turda, gecikme 100 milisaniyedir.Her sonraki üç yuvarlar sonra yeniden deneme gecikmesi katına — 200, 400 ve 800.Daha sonraki tüm yuvarlar için yeniden deneme gecikmesi 1 bağlantı girişimi başarılı ya da zaman aşımına kadar saniyedir.

Not

Daha sonra sunucu örnek durdurulursa, bağlantı isteği hemen başarısız olur.

Yeniden deneme gecikmesi ortakların rolleri geçiş yapmak bir elle yük devretme sırasında bağlantı girişimleri etkilemesi aşağıdaki şekilde gösterilmiştir.Oturum açma saat aşımı saat 15 saniyedir.

Yeniden deneme-gecikme algoritması