Por que a Transloadit supera o S3 em uploads de arquivos
Quando o assunto é lidar com uploads de arquivos, não faltam opções, mas uma das escolhas mais populares do mercado é o Amazon S3. Ainda assim, há vários motivos pelos quais a Transloadit pode atender melhor às suas necessidades de upload de arquivos.
Um dos nossos clientes nos perguntou recentemente sobre esse tema, então decidimos transformar a resposta em um post informativo para um público mais amplo.
Resumindo: a Transloadit oferece uma experiência melhor ao usuário final, pode ser mais econômica e é mais rápida que o S3.

Experiência do usuário
Em primeiro lugar, a Transloadit oferece uma experiência melhor ao usuário final graças ao nosso espetacular protocolo tus para uploads de arquivos retomáveis. Se um upload for interrompido ou a conexão do usuário cair, o cliente pode consultar o offset de bytes do servidor e retomar a partir dali.
Embora também seja possível implementar uploads retomáveis com o S3, isso exige dividir o arquivo em várias partes, enviadas individualmente. Assim, o upload de cada parte pode ser repetido em caso de interrupção da rede. O resultado é um delicado equilíbrio entre o desempenho do upload e a minimização da retransmissão de dados caso um upload falhe.
Com o tus, a retomada não depende de repetir o envio de uma parte de tamanho fixo do S3. O cliente retoma a partir do offset de bytes do servidor. Os clientes ainda podem dividir os uploads em blocos ou usar uploads paralelos, mas a retomada não exige escolher tamanhos de parte para o multipart do S3.
Custo-benefício
Outra vantagem de usar a Transloadit é o custo-benefício. Supondo que você queira que a Transloadit transforme ou filtre arquivos de alguma forma, usar o S3 exigiria pagamentos em várias etapas. Você paga para armazenar o arquivo, depois paga para retirá-lo, paga pela transformação e paga mais uma vez para colocar os resultados de volta no S3.
Aplicando esse mesmo caso de uso à Transloadit, há apenas um pagamento. Você paga pela transformação do arquivo, e só. Isso pode gerar uma economia significativa, principalmente se você lida com grandes quantidades de arquivos.
Velocidade
O benchmark abaixo compara uploads com tus, S3 e XHR sob condições de teste específicas. Esses resultados não são uma garantia de throughput para qualquer rede ou implantação.
Ele foi realizado fazendo o upload de um arquivo de 10 MB e de um de 1024 MB com métodos diferentes. Com o tus, os arquivos foram transferidos para um servidor na mesma rede usando o tusd. Com o S3, o arquivo foi enviado de uma instância AWS EC2 para um bucket na mesma região. Com o XHR, o arquivo foi enviado por meio de um XMLHttpRequest para um servidor Node.js.
A velocidade de upload foi então calculada dividindo o tamanho do arquivo pela duração do upload.

O tus oferece um throughput de upload de 4,75 Gb/s, contra os 947 Mb/s oferecidos pelo S3. O impacto é ainda mais drástico em comparação com um upload XHR mais tradicional, que atingiu velocidades de 423 Mb/s. Esses ganhos de velocidade também se aplicam a transferências de arquivos menores: no nosso benchmark acima, o tus foi mais de 3 vezes mais rápido que o S3 e o XHR no upload de um arquivo de 10 MB.
Além disso, a Transloadit oferece latências menores porque nossos servidores são distribuídos globalmente e estão sempre perto do usuário final. Um bucket do S3 existe em uma única região, então um usuário de outra região teria latência em cada requisição. Embora existam soluções alternativas para oferecer a mesma funcionalidade, isso significa ainda mais tempo que você deixa de dedicar ao seu produto principal.
Por fim, a Transloadit é mais rápida de configurar e tem um custo de desenvolvimento menor. Com o S3, o processo de integração com um backend de processamento, a criação de roles do IAM e a assinatura de requisições podem ser trabalhosos. Com a Transloadit, todas essas facilidades já vêm prontas!
Ouça seus engenheiros
Dito isso, a Transloadit não obtém sua receita lidando com uploads, então, no fim das contas, para nós tanto faz. É também por isso que disponibilizamos o Uppy e o seu plugin de S3 ao público. Incentivamos nossos clientes a usar as ferramentas com as quais se sentem à vontade.
No fim, decidir quais tecnologias usar se resume a confiança e conforto. Ninguém nunca foi demitido por escolher a AWS! Deixar que as preferências dos engenheiros orientem a decisão sobre qual tecnologia usar resulta em produtos melhores. Impor uma tecnologia de que eles não gostam pode, ao contrário, ter o efeito oposto.
Na Transloadit, sempre temos prazer em responder às suas dúvidas e oferecer nossas próprias orientações para projetar a melhor tecnologia de processamento de arquivos para a sua plataforma e para os requisitos da sua equipe. Fique à vontade para entrar em contato e conversar com a gente!
