SSL (Secure Socket Layer) använder datakryptering, autentisering och verifieringsmekanismer för meddelandeintegritet för att ge säkerhetsgaranti för applikationslagerprotokoll baserade på pålitliga anslutningar såsom TCP. Om användarens överföring inte sker via SSL, överförs datan i klartext på nätverket, vilket öppnar möjligheter för personer med dolda motiv. Därför har många stora webbplatser nu SSL-funktionen aktiverad. På liknande sätt, i vår databas, om klienten ansluter till servern för att hämta data istället för att använda en SSL-anslutning, kan datan stjälas under överföringen.
De huvudsakliga funktionerna som SSL-protokollet tillhandahåller är:
1. Konfidentialitet vid dataöverföring: Den överförda datan krypteras med en symmetrisk nyckelalgoritm. 2. Autentiseringsmekanism: Baserat på certifikatet autentiseras servern och klienten med digitala signaturmetoder, där autentisering av klienten är valfri. 3. Verifiering av meddelandeintegritet: MAC-algoritmer används för att verifiera integriteten hos meddelanden under meddelandeöverföring.
När man använder .NET/C# för att köra en MySQL-databas,Standardvärdet för SslMode är Preferred, om servern stödjer det, använd SSL.
Inloggningen med hyperlänken är synlig.
Med standardmetoden, vid ett stort antal samtidigheter, kan felet vara följande:
Engelskt meddelande: Anslutning öppen fel. Autentisering till värd '192.168.1.100' för användaren 'itsvse' med metoden 'mysql_native_password' misslyckades med meddelande: Läsning från strömmen har misslyckats.
Anslutning öppen fel. felanslutning: Timeout gick ut. Timeout-perioden gick innan man kunde få en anslutning från poolen. Detta kan ha skett eftersom alla poolanslutningar var i bruk och maxstorleken på poolen nåddes.
Att använda SSL säkerställer säkerheten vid dataöverföring, men minskar också effektiviteten i frågor och exekvering, vilket ökar trycket på databasen och programmen. Eftersom vår databas ligger i en privat nätverksmiljö är den relativt mycket säker, och det finns inget behov av överföringskryptering, så vi kan förbättra effektivitet och prestanda utan SSL-kryptering.
Jämförelse före och efter SSL-prestanda (QPS):Inloggningen med hyperlänken är synlig.
Utifrån testdata kan man se att efter att SSL aktiverats minskas databasens QPS med cirka 23 % i genomsnitt, vilket påverkar prestandan relativt sett. Ur SSL-implementeringens perspektiv är det nödvändigt att skaka hand, kryptera, dekryptera och andra operationer när man upprättar en anslutning. Därför ligger tiden som läggs på i princip i anslutningsstadiet, vilket kan orsaka större prestandaförlust för applikationer som använder korta länkar, såsom PHP-utveckling. Det kan dock vara mycket bättre om du använder anslutningspooler eller långa anslutningar.
För att förbättra prestandan, modifiera anslutningssträngen enligt följande:
(Slut)
|