Skip to content

Commit

Permalink
article: text changes
Browse files Browse the repository at this point in the history
  • Loading branch information
Alexandre Bonfitto committed Mar 31, 2024
1 parent cdf6511 commit 4d343fd
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 0 deletions.
2 changes: 2 additions & 0 deletions src/posts/2024/03/http2-and-http3-explained.md
Original file line number Diff line number Diff line change
Expand Up @@ -235,6 +235,8 @@ HTTP/3 was designed for unstable connections, such as cellphone and satellite ne

On reliable and stable connections, HTTP/2 many times offers better performance than HTTP/3.

In cases where only HTTP/1.x is allowed, web browsers and many HTTP clients avoid the HOL blocking by opening multiple TCP connections, so the requests go in parallel. If there is a great number of parallel requests, this technique *may* make HTTP/1.x offer a better throughput, however, it is a less efficient way to solve the problem. An alternative solution is having more than one HTTP/2-3 connection at the same time ([C# example](https://learn.microsoft.com/en-us/dotnet/api/system.net.http.socketshttphandler.enablemultiplehttp2connections?view=net-8.0#system-net-http-socketshttphandler-enablemultiplehttp2connections)).

Generally speaking, it's recommended to run compatibility and performance tests to determine which version is the most appropriate, and furthermore, a server can accept both HTTP/2 and HTTP/3 connections, leaving to the client the decision of which version to use.

## Bibliography
Expand Down
2 changes: 2 additions & 0 deletions src/posts/2024/03/http2-e-http3-explicados.md
Original file line number Diff line number Diff line change
Expand Up @@ -235,6 +235,8 @@ O HTTP/3 foi desenhado para conexões instáveis, como redes de telefonia celula

Em conexões confiáveis e plenas, o HTTP/2 muitas vezes oferece performance melhor do que o HTTP/3.

Em casos onde apenas HTTP/1.x é permitido, muitos navegadores e HTTP clients evitam o bloqueio de cabeça de fila abrindo várias conexões TCP, para que as requisições corram em paralelo. Se há um número grande de requisições em paralelo, essa técnica *pode* fazer com que o HTTP/1.x ofereça maior taxa de transferência (*throughput*), porém, é uma forma menos eficiente de se resolver o problema. Uma solução alternativa é ter mais de uma conexão HTTP/2-3 ao mesmo tempo ([exemplo em C#](https://learn.microsoft.com/en-us/dotnet/api/system.net.http.socketshttphandler.enablemultiplehttp2connections?view=net-8.0#system-net-http-socketshttphandler-enablemultiplehttp2connections)).

De modo geral, recomenda-se realizar testes de compatibilidade e de performance para decidir qual é a versão mais indicada, além disso, um servidor pode aceitar conexões tanto de HTTP/2 como de HTTP/3, cabendo ao cliente decidir qual versão usar.

## Bibliografia
Expand Down

0 comments on commit 4d343fd

Please sign in to comment.