SSL (Secure Socket Layer) utiliza mecanismos de criptografia, autenticação e verificação de integridade de mensagens de dados para fornecer garantia de segurança para protocolos de camada de aplicação baseados em conexões confiáveis como TCP. Se a transmissão do usuário não for via SSL, então os dados são transmitidos em texto simples na rede, o que abre oportunidades para pessoas com segundas intenções. Portanto, muitos sites grandes agora possuem a função SSL ativada. Da mesma forma, em nosso banco de dados, se o cliente se conecta ao servidor para obter dados em vez de usar uma conexão SSL, os dados podem ser roubados durante a transmissão.
As principais funções fornecidas pelo protocolo SSL são:
1. Confidencialidade da transmissão de dados: Os dados transmitidos são criptografados usando um algoritmo de chave simétrica. 2. Mecanismo de autenticação: Com base no certificado, o servidor e o cliente são autenticados usando métodos de assinatura digital, onde a autenticação do cliente é opcional. 3. Verificação da integridade das mensagens: Algoritmos MAC são usados para verificar a integridade das mensagens durante a transmissão de mensagens.
Ao usar .NET/C# para operar um banco de dados MySQL,O valor padrão para o Modo Ssl é Preferencial, se o servidor suportar, use SSL.
O login do hiperlink está visível.
Usando o método padrão, no caso de um grande número de concorrências, o erro pode ser o seguinte:
Mensagem em inglês: Erro de abertura de conexão. A autenticação para o host '192.168.1.100' para o usuário 'itsvse' usando o método 'mysql_native_password' falhou com mensagem: A leitura do fluxo falhou.
Erro de abertura de conexão. erro ao conectar: Tempo expirou. O período de tempo expirou antes de obter uma conexão da piscina. Isso pode ter ocorrido porque todas as conexões agrupadas estavam em uso e o tamanho máximo do pool foi alcançado.
O uso de SSL garante a segurança da transmissão de dados, mas também reduz a eficiência da consulta e execução, aumentando a pressão sobre o banco de dados e os programas. Como nosso banco de dados está em um ambiente de rede privada, ele é relativamente muito seguro e não há necessidade de criptografia de transmissão, então podemos melhorar a eficiência e o desempenho sem criptografia SSL.
Comparação de desempenho antes e depois do SSL (QPS):O login do hiperlink está visível.
A partir dos dados de teste, pode-se constatar que, após ativar o SSL, o QPS do banco de dados é reduzido em cerca de 23% em média, o que afeta relativamente o desempenho. Do ponto de vista da implementação de SSL, é necessário apertar mãos, criptografar, descriptografar e realizar outras operações ao estabelecer uma conexão. Portanto, o tempo gasto está basicamente na fase de conexão, o que pode causar maior perda de desempenho para aplicações que usam links curtos, como o desenvolvimento em PHP. No entanto, pode ser muito melhor se você usar pools de conexão ou conexões longas.
Para melhorar o desempenho, modifique a string de conexão da seguinte forma:
(Fim)
|