Uso de cookies em comunidade.academiadoruby.com.br

Utilizamos cookies para melhorar sua experiência. Você pode aceitar ou recusar o uso de cookies não essenciais. Sua escolha ficará salva por 6 meses. Saiba mais em Política de Privacidade · Política de Cookies

  1. Conteúdos
  2. Lives

Imagens Perfeitas no Rails: ActiveStorage, CSS e Dicas de Desempenho - Live #038

Daniel Denis Moreira

· 4 min de leitura

Conteúdo em Vídeo

Faça login para assistir

O upload de arquivos no Rails facilita muito o trabalho inicial. Mas o que acontece quando a sua aplicação começa a crescer e receber tráfego real?

Exibir a imagem original que o usuário enviou direto na tela é um dos erros mais comuns de quem está começando. Imagina um usuário fazendo upload de uma foto com 10 megabytes. Se você renderizar isso em um feed com vários registros, a tela vai demorar uma eternidade para carregar e o pacote de dados do cliente vai para o espaço.

Na Live #38, resolvemos esse problema na prática. Peguei o projeto de base da Academia do Ruby e passei por todos os estágios para exibir imagens da forma correta.

O perigo do armazenamento local

Por padrão, o Active Storage salva os arquivos na pasta storage/ do projeto. Para o ambiente de desenvolvimento, isso funciona super bem. O problema aparece quando você vai para produção utilizando Docker, por exemplo. Se você não mapear um volume externo, sempre que o contêiner for reiniciado, os uploads dos seus usuários vão sumir. A responsabilidade de manter tudo a salvo fica totalmente na sua mão.

A solução profissional é usar o armazenamento na nuvem. Mostrei que o Rails se conecta nativamente com serviços como Amazon S3, Google Cloud, Cloudflare R2 e DigitalOcean Spaces. Utilizando uma API compatível com o S3, você transfere a carga do armazenamento e a entrega dos arquivos via CDN para plataformas feitas para aguentar o tranco.

Conteúdo Exclusivo

Este conteúdo está disponível para membros. Faça login para continuar lendo.

Fazer Login

Não tem conta? Criar conta


Tópicos Relacionados
Compartilhar

Escrito por Daniel Denis Moreira

Criador da Academia do Ruby.
Acredito que simplicidade é estratégia — e que Rails é uma vantagem competitiva.

Feedback

Esse conteúdo foi…

Comentários (0)

Ainda não há comentários. Seja o primeiro a comentar!

Faça login para deixar um comentário.

Conteúdos Relacionados