|
SSL (Secure Socket Layer), TCP gibi güvenilir bağlantılara dayanan uygulama katmanı protokolleri için güvenlik garantileri sağlamak üzere veri şifreleme, kimlik doğrulama ve mesaj bütünlüğü doğrulama mekanizmalarını kullanır. Kullanıcının iletimi SSL yoluyla değilse, ağdaki verileri düz metin olarak iletilir ve bu da insanların fırsattan yararlanmak için art niyetli olmalarına neden olur. Bu yüzden birçok büyük web sitesi artık SSL'i etkinleştirmiştir. Benzer şekilde, veritabanımızda, veri elde etmek için sunucuya bağlanan istemci SSL bağlantısı kullanmıyorsa, iletim sürecinde veriler çalınabilir.
SSL protokolü ana özellikleri sağlar:
1, veri iletiminin gizliliği: iletilen verileri şifrelemek için simetrik anahtar algoritmalarının kullanılması. 2., kimlik doğrulama mekanizması: sunucunun ve istemcinin kimlik doğrulamasının dijital imza yöntemini kullanan sertifikaya dayanır, burada istemcinin kimlik doğrulaması isteğe bağlıdır. 3., Mesaj Bütünlüğü Doğrulaması: MAC algoritması, mesajın bütünlüğünü doğrulamak için mesaj iletimi sırasında kullanılır.
MySQL veritabanını çalıştırmak için .NET/C# kullanırken SslMode'un varsayılan değeri Prefered' dir, sunucu destekliyorsa lütfen SSL kullanın.
h ttps:// dev.mysql.com/doc/dev/connector-net/6.10/html/P_MySql_Data_MySqlClient_MySqlConnectionStringBuilder_SslMode.htm
Varsayılan yöntem kullanıldığında, çok sayıda eşzamanlılık olması durumunda aşağıdaki hata bildirilebilir:
Türkçe Mesaj : Bağlantı açık hatası . 'mysql_native_password' yöntemi kullanılarak 'itsvse' kullanıcısı için '192.168.1.100' ana bilgisayarına kimlik doğrulaması şu mesajla başarısız oldu: Akıştan okuma Bağlantı açık hatası .
Bağlantı açık hatası . Bağlanma hatası: Zaman aşımı süresi doldu. Havuzdan bir bağlantı alınmadan önce zaman aşımı süresi doldu. tüm havuzlanmış bağlantılar kullanımda olduğu ve maksimum havuz boyutuna ulaşıldığı için oluştu.
SSL kullanımı veri iletiminin güvenliğini sağlar, ancak aynı zamanda sorgulama ve yürütme verimliliğini azaltır ve veritabanı ve programlar üzerindeki baskıyı artırır. Veritabanımız bir intranet ortamında olduğundan, nispeten güvenlidir ve iletimi şifrelemeye gerek yoktur, bu nedenle verimliliği ve performansı artırmak için SSL şifrelemesini kullanamayız.
SSL kullanmadan önce ve sonra performans karşılaştırması (QPS): https: //www.cnblogs.com/mysql-dba/p/7061300.html
Test verilerinden, SSL açıldıktan sonra, veritabanı QPS'sinin ortalama olarak yaklaşık %23 oranında azaldığını ve bunun da performansı nispeten etkilediğini görebiliriz. SSL uygulamasından, bir bağlantının kurulması el sıkışma, şifreleme, şifre çözme ve diğer işlemleri gerektirir. Dolayısıyla, zaman tüketimi temel olarak bağlantının kurulması aşamasındadır ve bu da PHP geliştirme kullanımı gibi kısa bağlantılar kullanan uygulamalar için daha büyük bir performans kaybı yaratabilir. Ancak bağlantı havuzu veya uzun bağlantılar kullanırsanız çok daha iyi olabilir.
Performansı artırmak için bağlantı dizesi aşağıdaki gibi değiştirilir:
(son) |
Önceki: NET/C# Minimum İş Parçacıklarını Ayarla ThreadPool.SetMinThreads Performansı ArtırınSonraki İçerik:[ 转]mysql 新增表或字段时判断是否存在
|