|
|
Yayınlandı 18.06.2021 09:41:15
|
|
|
|

SSL (Güvenli Soket Katmanı), TCP gibi güvenilir bağlantılara dayalı uygulama katmanı protokollerine güvenlik güvencesi sağlamak amacıyla veri şifreleme, kimlik doğrulama ve mesaj bütünlüğü doğrulama mekanizmaları kullanır. Kullanıcının iletimi SSL üzerinden değilse, veri ağ üzerinde açık metin olarak iletilir ve bu da gizli niyetli kişiler için fırsatlar açar. Bu nedenle, birçok büyük web sitesinde artık SSL fonksiyonu etkinleştirilmiştir. Benzer şekilde, veritabanımızda, istemci SSL bağlantısı yerine sunucuya veri almak için bağlanırsa, veri iletim sırasında çalınabilir.
SSL protokolünün sağladığı ana işlevler şunlardır:
1. Veri iletiminin gizliliği: İletilen veriler simetrik anahtar algoritması kullanılarak şifrelenir. 2. Kimlik doğrulama mekanizması: Sertifikaya dayanarak, sunucu ve istemci dijital imza yöntemleriyle doğrulanır; istemcinin doğrulaması isteğe bağlıdır. 3. Mesaj bütünlüğü doğrulaması: MAC algoritmaları, mesaj iletimi sırasında mesajların bütünlüğünü doğrulamak için kullanılır.
MySQL veritabanını çalıştırmak için .NET/C# kullanılırken,SslMode için varsayılan değer Tercih edilir, sunucu destekliyorsa SSL kullanın.
Bağlantı girişi görünür.
Varsayılan yöntem kullanıldığında, çok sayıda eşzamanlılık durumunda hata şu olabilir:
İngilizce Mesaj: Bağlantı açılma hatası. Kullanıcı 'itsvse' için '192.168.1.100' ana bilgisayarına kimlik doğrulaması 'mysql_native_password' yöntemiyle başarısız oldu ve şu mesajı alındı: Akıştan okuma başarısız oldu.
Bağlantı açılma hatası. bağlantı hatası: Zaman aşımı doldu. Havuzdan bağlantı alınmadan önce zaman aşımı süresi geçti. Bu, tüm havuzlu bağlantıların kullanımda olması ve maksimum havuz büyüklüğüne ulaşılması nedeniyle gerçekleşmiş olabilir.
SSL kullanımı, veri iletiminin güvenliğini sağlar, ancak sorgu ve yürütme verimliliğini de azaltır, veri tabanı ve programlar üzerindeki baskıyı artırır. Veritabanımız özel bir ağ ortamında olduğu için nispeten çok güvenlidir ve iletim şifrelemesine gerek yoktur, bu yüzden SSL şifreleme olmadan verimlilik ve performansı artırabiliriz.
SSL performans karşılaştırmasından (QPS) önce ve sonra:Bağlantı girişi görünür.
Test verilerinden, SSL etkinleştirildikten sonra veritabanı QPS'nin ortalama %23 azaldığı ve bunun performansı nispeten etkilediği görülebiliyor. SSL uygulaması açısından bakıldığında, bağlantı kurarken el sıkışmak, şifreleme, şifre çözme ve diğer işlemler gereklidir. Bu nedenle, harcanan zaman temelde bağlantı aşamasındadır ve bu da kısa bağlantı kullanan uygulamalarda, örneğin PHP geliştirmede daha fazla performans kaybına yol açabilir. Ancak, bağlantı havuzları veya uzun bağlantılar kullanmak çok daha iyi olabilir.
Performansı artırmak için, bağlantı dizisini aşağıdaki gibi değiştirin:
(Son)
|
Önceki:.NET/C#, performansı artırmak için ThreadPool.SetMinThreads'te minimum iş parçacığı sayısını belirlerÖnümüzdeki:MySQL, yeni bir tablo eklerken bir tablo veya alan olup olmadığını belirler
|