Bağlantı işlemeyi anlama

Tamamlandı

MySQL iki geniş bağlantı kategorisini destekler:

  • Kısa ömürlü : Basit bir sorguyu yürütmek için kısa bir süre açık olan bir bağlantı. MySQL'in mimarisi, saniyede 80 bine kadar bağlantı ve bağlantı kesilmesini işleyen bu iş yükü türü için tasarlanmıştır.
  • Uzun ömürlü - Web sunucusu veya uygulama sunucusu gibi "süresiz" açık bir bağlantı. Bu senaryoda, istemci bir MySQL sunucusuyla bağlantı kurar ve ardından istemci sunucusu durdurulana kadar bağlantıyı kesmez ve bağlantıyı haftalar veya aylar boyunca tutar.

sunucu parametresi max_connections izin verilen en fazla istemci bağlantısı sayısını tanımlar. Bu üst sınıra ulaşıldığında, Etkin bağlantı kesilene kadar MySQL yeni bağlantılara izin vermez.

Bağlan ion havuzu ve kalıcı bağlantılar

Bir uygulamanın veritabanı bağlantılarını yönetme şekli, veritabanının genel performansı üzerinde önemli bir etkiye sahip olabilir. Azaltmayı hedeflemeniz gerekir:

  • Bağlantıların kurulma sayısı.
  • Anahtar kod yollarında bağlantı kurma zamanı.

En iyi sonuçları elde etmek için, MySQL için Azure Veritabanı sunuculara bağlanmak için bağlantı havuzu veya kalıcı bağlantılar kullanmayı göz önünde bulundurun.

Bağlan ion havuzu, veritabanı bağlantılarının oluşturulmasını, yönetilmesini ve ayrılmasını işlemek için kullanılır. Veritabanı bağlantısı istendiğinde, yeni bir bağlantı oluşturmak yerine var olan boşta veritabanı bağlantılarını ayırmaya öncelik sağlar. Bağlantı tamamlandıktan sonra, kapatılmak yerine yeniden kullanılabilmesi için kurtarılır. Bağlantı havuzunu göstermek için bkz. Java örnekleri | Microsoft Docs.

Kalıcı bağlantılar , bağlantı havuzuna benzer bir fikirdir. Kalıcı bağlantılar, genellikle 5-10 milisaniye içinde < yürütülen kısa süreli bağlantıların yerini uzun süreli bağlantılarla değiştirir. Bu değişiklik genellikle kodunuzda yalnızca küçük değişiklikler gerektirir, ancak tipik uygulama senaryoları için önemli performans iyileştirmeleri yapabilir. Bu yaklaşım, her yeni sorgu için yeni bir bağlantı iş parçacığı oluşturulmasını önleyerek performansı artırır.

Bağlan ion saklı yordamları

MySQL için Azure Veritabanı, sunucuya veSunucu Parametreleri dikey penceresi (veya Azure CLI kullanarak). Ancak, ek ayrıcalık gerektiren iki yönetim görevinin saklı yordamlar kullanılarak gerçekleştirilmesi gerekir. Bu ifadeler şunlardır:

  • mysql.az_kill - KILL CONNECTION deyimine eşdeğerdir. giriş parametresi olarak processlist_id alır. Bağlantı tarafından yürütülen bir deyimi sonlandırdıktan sonra bağlantıyı sonlandırır.
  • mysql.az_kill_query - KILL QUERY deyimine eşdeğerdir. giriş parametresi olarak processlist_id alır. Yalnızca bağlantı tarafından yürütülen deyimi sonlandırır ve bağlantıyı sonlandırmaz.

Bu saklı yordamlar SUPER USER ayrıcalıkları gerektirir.

Bağlan ion verimliliği

En iyi performans için genellikle ProxySQL veya MySQL için Heimdall Veri Ara Sunucusu çözümleri kullanmanız gerekir. Bağlantı verimliliği hakkında daha fazla bilgi için bkz. Bağlan Ion Verimliliği.