2012-12-10 22 views
6

Bir kerede 2000 istemciyi işlemek için kullandığım çok iş parçacıklı uygulama (sunucu) üzerinde çalışıyorum ve her iş parçacığımda MySQL veritabanının ayrı veritabanı bağlantısını açıyorum. Bu yüzden bağlantı havuzunu etkinleştirdim. Bağlantıları kullandıktan sonra kapatmamız gereken birçok bloğu aradım, sonra havuza geri dönecek ve diğer iş parçacığı tarafından kullanılacaktır. ise bağlantı yapmanın zaman alıcı bir süreç olduğunu biliyoruz. Bu yüzden sorum şu: Bağlantı havuzunda neden bağlantıyı kapatmalıyız. ve bağlantıyı açık tutmak veya kapatmak için daha iyi olan nedir?C# bağlantı havuzunda açık bağlantıyı tutmalıyım

cevap

6

biz bağlantı yapma zaman alıcı bir süreç

Doğru olduğunu biliyoruz - biz bağlantı havuzları yüzden. Bağlantıları koruyorlar, böylece yenilerini yaratmıyorsunuz.

neden biz diğer parçacıkları tarafından kullanılmak üzere yüzden döndüğünden emin olmak için

havuzu bağlantılı bağlantıyı kapatmalıdır.

Bağlantılar pahalı kaynaklardır, bu nedenle bunları açmak, kullanmak ve kapatmak istediğiniz kadar çabuk kapatmak, böylece havuza geri dönecek ve diğer iş parçacıklarına sunulacaklardır.

+0

Cevabınız için teşekkürler Oded. –

1

Havuzlanmış bir bağlantıyı kapattığınızda, bağlantıyı bitirdiğinizi söylüyorsunuz ve havuz yeniden kullanabilir.

Arama Kapat, bağlantıyı fiziksel olarak yitirmiyor. Havuzun, bağlantıların fiziksel olarak ne zaman kapalı olduğunu belirlemek için kendi mantığı vardır.

+0

Teşekkürler Richard Bu bağlantıyı kapatırken fiziksel olarak kapatıldığını düşünüyordum. ama onun gibi değil. Şimdi bağlantı havuzu hakkında netim :) –

İlgili konular