Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
PostgreSQL için Azure Veritabanı esnek sunucu örnekleriniz için bağlantı havuzu mekanizması seçmeye yönelik stratejik rehberlik.
Giriş
PostgreSQL için Azure Veritabanı esnek sunucu örneği kullanılırken, veritabanıyla bağlantı kurmak için istemci uygulaması ile sunucu arasında bir iletişim kanalı oluşturulması gerekir. Bu kanal verileri yönetmek, sorguları yürütmek ve işlemleri başlatmaktan sorumludur. Bağlantı kurulduktan sonra istemci uygulaması sunucuya komut gönderebilir ve yanıtlar alabilir. Ancak, her işlem için yeni bir bağlantı oluşturmak görev açısından kritik uygulamalarda performans sorunlarına neden olabilir. Her yeni bağlantı oluşturulduğunda PostgreSQL için Azure Veritabanı, postmaster işlemini kullanarak yeni bir işlem oluşturur ve bu işlem daha fazla kaynak tüketir.
Bu sorunu azaltmak için bağlantı havuzu, PostgreSQL için Azure Veritabanı'nda yeniden kullanılabilecek bağlantıların önbelleğini oluşturmak için kullanılır. Bir uygulama veya istemci bağlantı istediğinde, bağlantı havuzundan oluşturulur. Oturum veya işlem tamamlandıktan sonra yeniden kullanmak üzere havuza bağlantı döndürülür. Bağlantıları yeniden kullanarak kaynak kullanımı azalır ve performans iyileştirilir.
Bağlantı havuzu oluşturmak için farklı araçlar olsa da, bu bölümde PgBouncer kullanarak bağlantı havuzu kullanmak için farklı stratejiler ele alınıyor.
PgBouncer nedir?
PgBouncer , PostgreSQL için tasarlanmış verimli bir bağlantı havuzu oluşturucudur ve bir veya daha fazla veritabanına birden çok istemci bağlantısını yönetmede işlem süresini kısaltmanın ve kaynak kullanımını iyileştirmenin avantajını sunar. PgBouncer , bağlantı döndürme için üç ayrı havuz modu içerir:
- Oturum havuzu oluşturma: Bu yöntem, istemcinin bağlantısının süresi boyunca istemci uygulamasına bir sunucu bağlantısı atar. İstemci uygulamasının bağlantısı kesildikten sonra PgBouncer, sunucu bağlantısını havuza geri döndürür. Oturum havuzu mekanizması, Açık Kaynak PgBouncer'da varsayılan moddur. Bkz. PgBouncer yapılandırması
- İşlem havuzu oluşturma: İşlem havuzu ile bir işlem sırasında istemci uygulamasına bir sunucu bağlantısı ayrılmıştır. İşlem başarıyla tamamlandıktan sonra PgBouncer sunucu bağlantısını akıllı bir şekilde serbest bırakır ve havuz içinde yeniden kullanılabilir hale getirir. İşlem havuzu, PostgreSQL için Azure Veritabanı'nın yerleşik PgBouncer'ında varsayılan moddur ve hazırlanan işlemleri desteklemez.
- Deyim havuzu: Deyim havuzu oluşturmada, her bir deyim için istemci uygulamasına bir sunucu bağlantısı ayrılır. Deyimin tamamlanmasının ardından sunucu bağlantısı hemen bağlantı havuzuna döndürülür. Çok deyimli işlemlerin bu modda desteklenmediğini unutmayın.
PgBouncer'ın etkin kullanımı üç ayrı kullanım desenine ayırılabilir.
- PgBouncer ve Uygulama Birlikte Bulundurma dağıtımı
- Uygulamadan bağımsız merkezi PgBouncer dağıtımları
- Yerleşik PgBouncer ve Veritabanı dağıtımı
Bu desenlerin her birinin kendi avantajları ve dezavantajları vardır.
1. PgBouncer ve uygulama birlikte bulundurma Dağıtımı
Bu yaklaşım kullanılırken, PgBouncer uygulamanızın barındırıldığı sunucuya dağıtılır. Uygulama ve PgBouncer, vurgulandığı gibi geleneksel sanal makinelere veya mikro hizmet tabanlı bir mimariye dağıtılabilir:
I. Uygulama VM'sinde dağıtılan PgBouncer
Uygulamanız bir Azure VM üzerinde çalışıyorsa, aynı VM'de PgBouncer'ı ayarlayabilirsiniz. PgBouncer'ı PostgreSQL için Azure Veritabanı esnek sunucu örneğinizle bir bağlantı havuzu ara sunucusu olarak yüklemek ve yapılandırmak için aşağıdaki bağlantıda verilen yönergeleri izleyin.
PgBouncer'ı bir uygulama sunucusunda dağıtmak, özellikle PostgreSQL için Azure Veritabanı esnek sunucu veritabanlarıyla çalışırken çeşitli avantajlar sağlayabilir. Bu dağıtım yönteminin bazı önemli avantajları ve sınırlamaları şunlardır:
Avantajlar:
- Azaltılmış Gecikme Süresi: PgBouncer'ı aynı Uygulama VM'sine dağıtarak, birincil uygulama ile bağlantı havuzu oluşturucu arasındaki iletişim, yakınlıklarından dolayı verimlidir. PgBouncer'ın Uygulama VM'sinde dağıtılması gecikme süresini en aza indirir ve sorunsuz ve hızlı etkileşimler sağlar.
- Geliştirilmiş güvenlik:PgBouncer , uygulama ve veritabanı arasında güvenli bir aracı işlevi görebilir ve ek bir güvenlik katmanı sağlar. Veritabanına yalnızca yetkili istemcilerin erişebilmesini sağlayarak kimlik doğrulaması ve şifrelemeyi zorunlu kılabilir.
Genel olarak, PgBouncer'ın bir uygulama sunucusunda dağıtılması, esnek PostgreSQL için Azure Veritabanı sunucu veritabanlarına yönelik bağlantıları yönetmeye yönelik daha verimli, güvenli ve ölçeklenebilir bir yaklaşım sağlayarak uygulamanın performansını ve güvenilirliğini geliştirir.
Limitations:
- Tek hata noktası: PgBouncer uygulama sunucusunda tek bir örnek olarak dağıtılırsa, olası bir hata noktası haline gelir. PgBouncer örneği devre dışı kalırsa veritabanı bağlantı havuzunun tamamını kesintiye uğratarak uygulama için kapalı kalma süresine neden olabilir. Tek hata noktasını azaltmak için, yüksek kullanılabilirlik için bir yük dengeleyicinin arkasında birden çok PgBouncer örneği ayarlayabilirsiniz.
- Sınırlı ölçeklenebilirlik: PgBouncer ölçeklenebilirliği, dağıtıldığı sunucunun kapasitesine bağlıdır. Uygulama sunucusu bağlantı sınırına ulaşırsa PgBouncer bir performans sorununa dönüşebilir ve bu da uygulamanın ölçeklendirilebilmesini sınırlayabilir. Bağlantı yükünü birden çok PgBouncer örneğine dağıtmanız veya uygulama düzeyinde bağlantı havuzu gibi alternatif çözümleri göz önünde bulundurmanız gerekebilir.
- Yapılandırma karmaşıklığı: PgBouncer'ın yapılandırılması ve ince ayarlanması, özellikle bağlantı sınırları, havuz boyutlandırma ve yük dengeleme gibi faktörler dikkate alındığında karmaşık olabilir. Yöneticilerin PgBouncer yapılandırmasını uygulamanın gereksinimlerine uyacak şekilde dikkatle ayarlaması ve en iyi performans ile kararlılığı sağlaması gerekir.
Bu sınırlamaları avantajlarla karşılaştırıp PgBouncer'ın belirli uygulama ve veritabanı kurulumunuz için doğru seçim olup olmadığını değerlendirmek önemlidir.
II. AKS sepet olarak dağıtılan PgBouncer
Uygulamanız kapsayıcılıysa ve Azure Kubernetes Service (AKS), Azure Container Instance (ACI), Azure Container Apps (ACA) veya Azure Red Hat OpenShift (ARO) üzerinde çalışıyorsa PgBouncer'ı sepet kapsayıcısı olarak kullanabilirsiniz. Sepet deseni, ilhamını, sepet kapsayıcısı olarak bilinen yardımcı bir kapsayıcının bir ana uygulamaya bağlı olduğu bir motosiklete bağlı sepet kavramından alır. Bu desen, işlevlerini genişleterek ve ek destek sağlayarak üst uygulamayı zenginleştirir.
Sepet deseni genellikle bir atomik kapsayıcı grubu olarak birlikte zamanlanan kapsayıcılarla birlikte kullanılır. AKS sepette PgBouncer dağıtmak, uygulama ve sepet yaşam döngülerini sıkı bir şekilde birleştirir ve kaynakları verimli bir şekilde kullanmak için konak adı ve ağ gibi kaynakları paylaşır. PgBouncer yan aracı, Azure Kubernetes Hizmeti (AKS) içinde 1:1 eşlemesi ile aynı podda uygulama kapsayıcısı ile birlikte çalışır ve PostgreSQL için Azure Veritabanı esnek sunucu örnekleri için bir bağlantı havuzu proxy'si işlevi görür.
Bu sepet düzeni genellikle bir atomik kapsayıcı grubu olarak birlikte zamanlanan kapsayıcılarla birlikte kullanılır. sepet deseni, uygulamayı ve sepet yaşam döngülerini güçlü bir şekilde bağlar ve konak adı ve ağ gibi paylaşılan kaynaklara sahiptir. PgBouncer bu kurulumu kullanarak bağlantı yönetimini iyileştirir ve uygulama ile PostgreSQL için Azure Veritabanı esnek sunucu örneği arasında verimli iletişimi kolaylaştırır.
Microsoft, Microsoft kapsayıcı kayıt defterinde bir PgBouncer sepet proxy görüntüsü yayımladı.
Diğer ayrıntılar için buna bakın.
Bu dağıtım yönteminin bazı önemli avantajları ve sınırlamaları şunlardır:
Avantajlar:
- Azaltılmış Gecikme Süresi: PgBouncer'ı AKS sepet olarak dağıtarak, birincil uygulama ile bağlantı havuzu oluşturucu arasındaki iletişim, yakınlıklarından dolayı sorunsuz ve verimlidir. AKS sepetli PgBouncer'ın dağıtılması gecikme süresini en aza indirir ve sorunsuz ve hızlı etkileşimler sağlar.
- Basitleştirilmiş Yönetim ve Dağıtım: PgBouncer'ın uygulama kapsayıcısıyla sıkı bir şekilde birleştirilmesi, yönetim ve dağıtım sürecini basitleştirir. Her iki bileşen de sıkı bir şekilde tümleştirildiğinden, daha kolay yönetim ve sorunsuz koordinasyon sağlar.
- Yüksek Kullanılabilirlik ve Bağlantı Dayanıklılığı: Bir uygulama kapsayıcısı hatası veya yeniden başlatması durumunda PgBouncer sepet kapsayıcısı yakından takip ederek yüksek kullanılabilirlik sağlar. Bu kurulum, bağlantı dayanıklılığını garanti eder ve yük devretme sırasında bile öngörülebilir performansı korur ve güvenilir ve sağlam bir sisteme katkıda bulunur.
PgBouncer'ı AKS sepet olarak değerlendirerek uygulamanızın performansını artırmak, yönetimi kolaylaştırmak ve bağlantı havuzu oluşturucunun sürekli kullanılabilirliğini sağlamak için bu avantajları kullanabilirsiniz.
Limitations:
- Bağlantı Performansı Sorunları: Her biri sidecar PgBouncer çalıştıran binlerce pod kullanan büyük ölçekli uygulamalar, veritabanı bağlantısı tükenmesi ile ilgili olası zorluklarla karşılaşabilir. Bu durum performans düşüşü ve hizmet kesintilerine neden olabilir. Her pod için bir sepet PgBouncer dağıtmak, veritabanı sunucusuna eşzamanlı bağlantı sayısını artırır ve bu da kapasitesini aşabilir. Sonuç olarak, veritabanı yüksek hacimli gelen bağlantıları işlemekte zorlanabilir, artan yanıt süreleri ve hatta hizmet kesintileri gibi performans sorunlarına yol açabilir.
- Karmaşık Dağıtım: Sepet deseninin kullanımı, aynı pod içinde iki kapsayıcı çalıştırmayı içerdiğinden dağıtım işlemine karmaşıklık düzeyi getirir. Bu, sorun giderme ve hata ayıklama etkinliklerini karmaşık hale getirmek için sorunları tanımlamak ve çözmek için fazladan çaba gerektirebilir.
- Ölçeklendirme Zorlukları: Sepet deseninin yüksek ölçeklenebilirlik gerektiren uygulamalar için ideal seçenek olmayabileceğini unutmayın. Sepet kapsayıcısının eklenmesi daha fazla kaynak gereksinimine neden olabilir ve bu da etkili bir şekilde oluşturulabilecek ve yönetilebilen pod sayısını sınırlandırabilir.
Bu sepet düzeni dikkate alınırken, dağıtım karmaşıklığı ve ölçeklenebilirlik gereksinimleri arasındaki dengeleri dikkatle değerlendirerek belirli uygulama senaryonuza en uygun yaklaşımı belirlemeniz önemlidir.
2. Uygulamadan bağımsız - Merkezi PgBouncer dağıtımı
Bu yaklaşım kullanılırken PgBouncer, uygulamadan bağımsız olarak merkezi bir hizmet olarak dağıtılır. PgBouncer hizmeti, vurgulandığı gibi geleneksel sanal makinelere veya mikro hizmet tabanlı bir mimari içinde dağıtılabilir:
I. Azure Load Balancer'ın arkasındaki ubuntu VM'sinde dağıtılan PgBouncer
PgBouncer bağlantı ara sunucusu, görüntüde gösterildiği gibi Azure Load Balancer'ın arkasındaki uygulama ve veritabanı katmanı arasında ayarlanır. Bu düzende birden çok PgBouncer örneği, tek hata noktasını azaltmak için bir hizmet olarak yük dengeleyicinin arkasına dağıtılır. Bu düzen, uygulamanın Azure Uygulaması Hizmetleri veya Azure İşlevleri gibi yönetilen bir hizmette çalıştığı ve mevcut altyapınızla kolay tümleştirme için PgBouncer hizmetine bağlandığı senaryolarda da uygundur.
PostgreSQL için Azure Veritabanı esnek sunucu örnekleriyle PgBouncer bağlantı havuzu proxy'sini yüklemek ve ayarlamak için bağlantıya bakın.
Bu dağıtım yönteminin bazı önemli avantajları ve sınırlamaları şunlardır:
Avantajlar:
- Tek Hata Noktasını Kaldırma: Azure Load Balancer'ın arkasında birkaç PgBouncer örneği olduğundan uygulama bağlantısı tek bir PgBouncer VM'sinin başarısızlığından etkilenmeyebilir.
- Yönetilen Hizmetlerle Sorunsuz Tümleştirme: Uygulamanız Azure Uygulaması Hizmetleri veya Azure İşlevleri gibi yönetilen bir hizmet platformunda barındırılıyorsa, VM'de PgBouncer dağıtmak mevcut altyapınızla kolay tümleştirme sağlar.
- Azure VM'de Basitleştirilmiş Kurulum: Uygulamanızı zaten bir Azure VM'de çalıştırıyorsanız, aynı VM'de PgBouncer'ı ayarlamak kolaydır. VM'de PgBouncer'ın dağıtılması, PgBouncer'ın uygulamanıza yakın bir şekilde dağıtılmasını sağlayarak ağ gecikme süresini en aza indirir ve performansı en üst düzeye çıkarır.
- Müdahaleci Olmayan Yapılandırma: PgBouncer'ı bir VM'ye dağıtarak PostgreSQL için Azure Veritabanı esnek sunucu örneğinizde sunucu parametrelerini değiştirmekten kaçınabilirsiniz. Bu, PgBouncer'ı PostgreSQL için Azure Veritabanı esnek bir sunucu örneğinde yapılandırmak istediğinizde kullanışlıdır. Örneğin, PostgreSQL için Azure Veritabanı esnek sunucu örneğinde SSLMODE parametresinin "gerekli" olarak değiştirilmesi, SSLMODE=FALSE kullanan bazı uygulamaların başarısız olmasına neden olabilir. PgBouncer'ı ayrı bir VM'ye dağıtmak, PgBouncer'ın avantajlarını kullanmaya devam ederken varsayılan sunucu yapılandırmasını korumanıza olanak tanır.
Bu avantajları göz önünde bulundurarak VM'de PgBouncer dağıtmak, Azure altyapısında çalışan uygulamanızın performansını ve uyumluluğunu geliştirmek için kullanışlı ve verimli bir çözüm sunar.
Limitations:
- Yönetim yükü:PgBouncer VM'ye yüklendiğinden, birden çok yapılandırma dosyasını yönetmek için yönetim yükü olabilir. Bu, sürüm yükseltmeleri, yeni sürümler ve ürün güncelleştirmeleriyle başa çıkmayı zorlaştırır.
- Özellik eşlik: Geleneksel PostgreSQL'den PostgreSQL için Azure Veritabanı esnek sunucu örneğine geçiş yapıp PgBouncer kullanıyorsanız bazı özelliklerde boşluklar olabilir. Örneğin PostgreSQL için Azure Veritabanı'nda md5 desteğinin olmaması.
II. AKS içinde hizmet olarak dağıtılan merkezi PgBouncer
Azure Kubernetes Service'te (AKS) yüzlerce poddan oluşan yüksek oranda ölçeklenebilir ve büyük kapsayıcılı dağıtımlarla çalışıyorsanız veya paylaşılan bir veritabanına birden çok uygulamanın bağlanması gereken durumlarda PgBouncer sepet kapsayıcısı yerine tek başına hizmet olarak kullanılabilir.
PgBouncer'ı ayrı bir hizmet olarak kullanarak, uygulamalarınız için bağlantı havuzunu daha geniş ölçekte verimli bir şekilde yönetebilir ve işleyebilirsiniz. Bu yaklaşım, en iyi performansı ve kaynak kullanımını korurken birden çok uygulamanın aynı veritabanı kaynağına bağlanmasına olanak tanıyarak bağlantı havuzu işlevselliğini merkezileştirmeye olanak tanır.
Microsoft kapsayıcı kayıt defterinde yayımlanan PgBouncer sepet ara sunucusu görüntüsü, hizmet oluşturmak ve dağıtmak için kullanılabilir.
Bu dağıtım yönteminin bazı önemli avantajları ve sınırlamaları şunlardır:
Avantajlar:
- Gelişmiş Güvenilirlik: PgBouncer'ın tek başına bir hizmet olarak dağıtılması, yüksek oranda kullanılabilir bir şekilde yapılandırmaya olanak tanır. Bu, bağlantı havuzu altyapısının genel güvenilirliğini artırarak hatalar veya kesintiler karşısında bile sürekli kullanılabilirlik sağlar.
- En uygun Kaynak Kullanımı: Uygulamanızın veya veritabanı sunucunuzun kaynakları sınırlıysa, PgBouncer hizmetini çalıştırmaya ayrılmış ayrı bir makine seçmek avantajlı olabilir. PgBouncer'ı geniş kaynaklara sahip bir makineye dağıtarak en iyi performansı sağlayabilir ve kaynak çekişmesi sorunlarını önleyebilirsiniz.
- Merkezi Bağlantı Yönetimi: Veritabanı bağlantılarının merkezi yönetimi bir gereksinim olduğunda, tek başına bir PgBouncer hizmeti daha kolay bir yaklaşım sağlar. Bağlantı yönetimi görevlerini merkezi bir hizmette birleştirerek, birden çok uygulama arasında veritabanı bağlantılarını etkili bir şekilde izleyebilir ve denetleyerek yönetimi basitleştirebilir ve tutarlılık sağlayabilirsiniz.
PgBouncer'ı AKS içinde tek başına bir hizmet olarak değerlendirerek, veritabanı bağlantılarının güvenilirliğini, kaynak verimliliğini ve merkezi yönetimini artırmak için bu avantajları kullanabilirsiniz.
Limitations:
- Artan N/W Gecikme Süresi: PgBouncer'ı tek başına bir hizmet olarak dağıtırken, daha fazla gecikme süresinin olası girişini göz önünde bulundurmak önemlidir. Bunun nedeni, ağ üzerinden uygulama ile PgBouncer hizmeti arasında bağlantı geçirilmesi gereksinimidir. Uygulamanızın gecikme gereksinimlerini değerlendirmek ve merkezi bağlantı yönetimi ile olası gecikme sorunları arasındaki dengeleri göz önünde bulundurmak çok önemlidir.
Tek başına hizmet olarak çalışan PgBouncer merkezi yönetim ve kaynak iyileştirme gibi avantajlar sunarken, uygulamanızın performansı üzerindeki olası gecikme süresinin etkisini değerlendirerek gereksinimlerinize uygun olduğundan emin olmak önemlidir.
3. PostgreSQL için Azure Veritabanı'nda yerleşik PgBouncer
PostgreSQL için Azure Veritabanı, yerleşik bir bağlantı havuzu çözümü olarak PgBouncer sunar. Bu, veritabanı başına sunucu temelinde etkinleştirilebilen isteğe bağlı bir hizmet olarak sunulur. PgBouncer, PostgreSQL için Azure Veritabanı esnek sunucu örneğiyle aynı sanal makinede çalışır. Bağlantı sayısı birkaç yüz veya binden fazla arttıkça PostgreSQL için Azure Veritabanı kaynak sınırlamalarıyla karşılaşabilir. Bu gibi durumlarda, yerleşik PgBouncer veritabanı sunucusunda boşta ve kısa süreli bağlantıların yönetimini geliştirerek önemli bir avantaj sağlayabilir.
PostgreSQL için Azure Veritabanı'nda PgBouncer bağlantı havuzunu etkinleştirme ve ayarlama bağlantısına bakın.
Bu dağıtım yönteminin bazı önemli avantajları ve sınırlamaları şunlardır:
Avantajlar:
- Sorunsuz Yapılandırma: PostgreSQL için Azure Veritabanı esnek sunucu örneğinizdeki yerleşik PgBouncer ile ayrı bir yükleme veya karmaşık kuruluma gerek yoktur. Sorunsuz bir deneyim sağlamak için doğrudan sunucu parametrelerinden kolayca yapılandırılabilir.
- Yönetilen Hizmet Kolaylığı: Yönetilen hizmet olarak, kullanıcılar diğer Azure yönetilen hizmetlerinin avantajlarından yararlanabilir. Bu, el ile bakım gereksinimini ortadan kaldıran ve PgBouncer'ın en son özellikler ve güvenlik yamaları ile güncel kalmasını sağlayan otomatik güncelleştirmeleri içerir.
- Genel ve Özel Bağlantı Desteği: PostgreSQL için Azure Veritabanı esnek sunucu örneğinizdeki yerleşik PgBouncer hem genel hem de özel bağlantılar için destek sağlar. Bu, kullanıcıların özel ağlar üzerinden güvenli bağlantılar kurmasına veya özel gereksinimlerine bağlı olarak harici olarak bağlanmasına olanak tanır.
- Yüksek Kullanılabilirlik (HA): Hazır bekleyen sunucunun birincil role yükseltildiği bir yük devretme durumunda, PgBouncer uygulama bağlantı dizesi herhangi bir değişiklik yapmadan yeni yükseltilen beklemede sorunsuz bir şekilde yeniden başlatılır. Bu, sürekli kullanılabilirlik sağlar ve uygulamanın kesintiye uğramasını en aza indirir.
- Maliyet Açısından Verimli: Kullanıcıların VM veya kapsayıcılar gibi ek işlemler için ödeme yapmalarına gerek olmadığından, aynı makinede çalışan başka bir işlem olduğu için CPU etkisine sahip olması maliyet açısından verimlidir.
PostgreSQL için Azure Veritabanı esnek sunucu örneğinde yerleşik PgBouncer ile kullanıcılar basitleştirilmiş yapılandırma, yönetilen hizmetin güvenilirliği, çeşitli havuz modları için destek ve yük devretme senaryoları sırasında sorunsuz yüksek kullanılabilirlik olanaklarının keyfini çıkarabilir.
Limitations:
- Burstable ile desteklenmiyor:PgBouncer şu anda Burstable sunucu işlem katmanında desteklenmemekte. İşlem katmanını Genel Amaçlı veya Bellek için İyileştirilmiş katmanından Seri hale getirilebilir katmana değiştirirseniz PgBouncer özelliğini kaybedersiniz.
- Yeniden başlatmalardan sonra bağlantıları yeniden kurma: Ölçeklendirme işlemleri, HA yük devretme veya yeniden başlatma sırasında sunucu yeniden başlatıldığında, PgBouncer da sunucu sanal makinesiyle birlikte yeniden başlatılır. Bu nedenle, mevcut bağlantıların yeniden kurulması gerekir.
PgBouncer'ı uygulamanın farklı yollarını ele aldık ve tabloda hangi dağıtım yönteminin seçildiği özetlenmiştir:
| Seçim Ölçütleri | Uygulama VM'sinde PgBouncer | ALB kullanan VM'de PgBouncer* | AKS Sepet üzerinde PgBouncer | Hizmet Olarak PgBouncer | Azure PostgreSQL için yerleşik PgBouncer Veritabanı |
|---|---|---|---|---|---|
| Basitleştirilmiş Yönetim |
|
|
|
|
|
| HA |
|
|
|
|
|
| Kapsayıcılı Uygulamalar |
|
|
|
|
|
| Azaltılmış Ağ Ek Yükü ve Gecikme Süresi |
|
|
|
|
|
| İzleme ve hata ayıklama üzerinde ayrıntılı denetim |
|
|
|
|
|
Açıklama
| Zorluk Düzeyi | Sembol |
|---|---|
| Easy |
|
| Orta |
|
| Zor |
|
*ALB: Azure Load Balancer.