Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 34710|Resposta: 5

[ASP.NET] asp.net core 3.1 habilita o algoritmo de compressão do site Brotli

[Copiar link]
Postado em 23-01-2021 12:12:25 | | | |
Brotli é um novo algoritmo de compressão desenvolvido pelo Google. O menor tamanho de resposta de compressão permite melhor utilização do espaço e carregamento de páginas mais rápido. Em muitos casos, o Brotli supera o gzip. Vantagens: Para ativos web típicos como css, html, js, o Brotli supera o gzip em 17-25%. Brotli -11 densidade comparado a gzip-9: html (corpus multilíngue): economize 25% do js (os 10k mais altos da Alexa): economize 17% do js encolhendo (top 10k da Alexa): economize 17% do CSS (top 10k da Alexa): 20% de economia.

Introdução ao algoritmo Brotli

O Brotli foi originalmente lançado em 2015 para compressão offline de fontes web. Engenheiros de software do Google lançaram uma versão aprimorada do Brotli em setembro de 2015, com foco especial na compressão HTTP. O codificador foi parcialmente reescrito para melhorar a taxa de compressão, tanto o codificador quanto o decodificador foram aumentados para maior velocidade, e a API de streaming foi aprimorada para adicionar mais níveis de qualidade de compressão. A nova versão também apresenta melhorias de desempenho em várias plataformas e redução da memória necessária para a decodificação.

Ao contrário dos algoritmos comuns de compressão de uso geral, o Brotli utiliza um dicionário pré-definido de 120 kilobytes. O dicionário contém mais de 13.000 palavras, frases e outras substrings comumente usadas de um grande corpus de textos e documentos HTML. Algoritmos pré-definidos podem aumentar a densidade de compressão de arquivos menores.

Usar Brotli em vez de desinflar para comprimir arquivos de texto geralmente aumenta a densidade de compressão em 20%, enquanto a velocidade de compressão e descompressão é aproximadamente a mesma. O tipo de codificação de conteúdo para compressão de fluxo usando Brotli foi proposto para usar "br".

Brotli vs. Gzip


Ao avaliar algoritmos de compressão, focamos em dois indicadores: taxa de compressão e velocidade de compressão. Como você pode ver na figura acima, não importa qual dos 9 níveis de compressão do gzip seja usado, sua taxa de compressão é menor que a do brotli (comparado ao gzip, também pode ser configurado para 10), e a velocidade de compressão também é mais lenta.

Vantagem do Brotli: O Brotli supera o gzip em 17-25% para ativos web típicos como css, html, js. Brotli -11 densidade comparado ao gzip-9: html (corpus multilíngue): economize 25% do js (maior 10k da Alexa): economize 17% de js encolhendo (top 10k da Alexa): economize 17% do CSS (top 10k da Alexa): 20% de economia

asp.net núcleo habilita o Brotli

Valor do cabeçalho Accept-Encoding



Configuração do código

O código a seguir demonstra como habilitar middleware de compressão responsiva para o tipo MIME padrão e provedores de compressão (Brotli e Gzip):


Nota:

  • app. O UseResponseCompression deve estar incluído no app. Use o UseMvc antes de ligar.
  • Use ferramentas como Fiddler, Firebug ou Postman para configurar o cabeçalho de requisição Accept-Encoding e estudar o cabeçalho da resposta, tamanho e corpo.



Por padrão, o provedor de compressão Brotli é adicionado ao array do provedor de compressão junto com o provedor de compressão Gzip. Quando o cliente suporta o formato de dados comprimidos Brotli, a compressão é padrão para compressão Brotli. Se o cliente não suporta Brotli, a compressão é padrão para Gzip quando o cliente suporta compressão Gzip.

Teste de compressão BR

Abra a ferramenta de captura de pacotes do Fiddler e use um navegador para acessar o endereço do nosso site, você pode ver o seguinte:




Cabeçalho do pedido: Aceitar-Codificação: gzip, deflate, br

Cabeçalho de resposta: Codificação de conteúdo: br

Quando a compressão é realizada, o cabeçalho Content-Length é removido porque o conteúdo do corpo muda quando a resposta é comprimida.

Quando a compressão é realizada, o cabeçalho Content-MD5 é removido porque o conteúdo do corpo mudou e o hash não é mais válido.


Quando asp.net core ativa a função https, o Brotli não afeta a compressão html e json, mas pode comprimir js e css. (É possível que o comprimento do caractere seja pequeno demais para ser comprimido, e que ele deva ser definido

(Fim)





Anterior:Busca inteligente de nome de domínio por DNS, curinga
Próximo:asp.net núcleo em massa renomeia pacotes zip na memória
Postado em 24-09-2022 10:48:26 |
Originalidade não é fácil, veja o código-fonte
Postado em 28-02-2023 11:51:11 |
Obrigado por compartilhar
 Senhorio| Postado em 2023-9-1 21:59:51 |

 Senhorio| Postado em 2023-9-17 10:47:02 |
.NET 6 testa algoritmos Gzip e Brotli
https://www.itsvse.com/thread-10663-1-1.html
 Senhorio| Postado em 2025-11-16 22:39:26 |
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com