Percebi que os custos de largura de banda (transferência) do serviço de imagens S3 do nosso site continuam subindo. O preço é de $0,09/GB e isso pode aumentar rapidamente. Suponho que não sou o único site com esse problema? Estou pagando à Amazon $70/mês apenas pela transferência, o que é mais do que meus custos com a VM. O custo de armazenamento S3 é de apenas $5/mês; todo o problema são as taxas de transferência.
Não tenho nenhuma CDN ou cache configurado, apenas um Discourse totalmente genérico rodando em uma VM Linode usando os buckets de imagens S3. O que sites maiores com muitas imagens estão fazendo? CDN (suponho que isso reduzirá os custos)? Usar Digital Ocean Spaces ou Minio? Algo mais que estou esquecendo?
Hmm… analisando os custos de largura de banda na Fastly e na Amazon CloudFront (e outras), eles são praticamente os mesmos que os US$ 0,09/GB que estou pagando agora
Parece que a Cloudflare não cobra pela largura de banda?? Talvez essa seja a solução a tentar. Existe algum post sobre como configurar a Cloudflare para servir imagens do S3 via CDN no Discourse? Vejo a opção s3_cdn_url, mas não encontro instruções sobre como usá-la (além de saber que preciso rebakear após configurá-la). Ao analisar a Cloudflare, parece que é necessário ter seu próprio domínio, já que o DNS precisa ser alterado… então eu teria que criar um CNAME algo como s3-cloudflare.meudominio.com, apontando para o IP do meu bucket S3, instruir a Cloudflare a atuar sobre essa URL, configurar o s3_cdn_url para esse endereço e, em seguida, rebakear?
Aqui está uma página de suporte da Cloudflare que parece indicar que isso pode funcionar:
Alguém está fazendo isso?? Estou um pouco surpreso de que não haja muitos sites com esse problema, já que isso mais que dobra meu custo mensal, pelo menos no meu caso.
Estou usando o Cloudflare no meu site Discourse e funciona perfeitamente. Basicamente, você direciona todo o seu tráfego pelo Cloudflare e configura o que deve ser processado ou armazenado em cache — e pronto. No entanto, há algumas coisas a ter em mente:
Configure o Cloudflare para NÃO armazenar nada em cache (crie exceções usando regras de página, veja abaixo).
Não deixe o Cloudflare modificar seu JavaScript — especificamente, desative o Rocket Loader.
Ainda não tenho certeza sobre a compressão Brotli; desativei.
Configure regras de página para armazenar em cache os diretórios de avatares e uploads, conforme abaixo (ignore a regra nº 1, pois é específica do site).
Atualmente, o Cloudflare está armazenando em cache pouco mais de 3 TB de dados por mês para mim e está servindo imagens grandes com bastante rapidez.
Se você estiver mais interessado em uma CDN, também posso recomendar https://www.belugacdn.com/ (não tenho vínculo com eles). Uso em uma grande plataforma WordPress e o desempenho é bom, por uma fração do custo de outras plataformas de CDN que analisei (essas podem ser ainda mais performáticas, mas a Beluga atende às minhas necessidades).
Você acabou migrando da Amazon CloudFront no final, @scottfsmith?
Estou me encontrando em uma situação semelhante, com o aumento dos gastos.
A CloudFront é algo relativamente novo para mim. Nos últimos anos, eu gerenciei apenas um bucket S3, mas com base nas recomendações aqui, configurei a CloudFront no mês passado.
Tudo isso fez foi transferir o custo da transferência de dados do S3 para a transferência de dados da CloudFront; a fatura mensal total continua a mesma.
Estou chegando a uma fatura mensal insustentável para transferência de dados.
Estou no mesmo barco. Também migrei para o CloudFront há pouco tempo e os custos estão parecidos. Eu pensava que haveria alguma economia devido ao cache local, ou seja, a largura de banda seria menor se a mesma imagem fosse carregada repetidamente da mesma localização geográfica, mas até agora parece que não.
Parece que deveria haver algum outro CDN que funcione no lugar do CloudFront; tudo o que o Discourse faz é reescrever as URLs das imagens, então é bem genérico (parece). Talvez o Cloudflare pudesse ser usado apenas para as imagens.
+98% do nosso tráfego é baseado no Reino Unido e, naturalmente, 98% da nossa saída do S3 via CloudFront também é para o Reino Unido.
Até agora, não vejo nenhum benefício em ter uma CDN. Se nosso tráfego fosse mundial, talvez eu estivesse vendo algo diferente.
Vou ler mais sobre o Cloudflare (como é que esses dois conseguiram ficar com nomes tão parecidos!) nos próximos dias e ver se consigo encontrar algum benefício.
O Stackpath CDN custa US$ 20/mês com um limite de 1 TB, e em muitos meses eu ultrapasso esse valor. Em seguida, o preço salta para US$ 200/mês para o limite de 20 TB, o que é mais do que os cerca de US$ 100/mês que a Amazon me cobra.
Talvez haja outro serviço nessa lista que seja melhor, embora. Obrigado pela lembrança sobre a lista.
O que um plugin assim faria? Ele simplesmente não baixaria plugins do IMGUR, ou funcionaria como o sistema atual, fazendo o upload de todas as imagens para o IMGUR por meio de alguma interface de API que presumivelmente existe?
Quanto isso valeria para você? Duvido que seja algo que faça sentido para o modelo de negócios da CDCK, já que o hospedagem paga é o que torna o Discourse possível para todos nós, e a hospedagem deles funciona perfeitamente sem um plugin do IMGUR.
Não, nós apenas armazenamos em cache os diretórios de uploads e avatares; veja nossas regras acima. Se você tentar fazer qualquer outra coisa, provavelmente quebrará o Discourse.
Embora este tópico esteja ativo novamente, devo dar seguimento… parece que o Amazon CloudFront reduziu significativamente seus preços. Não tenho ideia do que eles fizeram, mas meus custos médios da AWS passaram de cerca de US$ 80 por mês para US$ 15 por mês. Isso é para S3 e CloudFront para imagens (apenas) em um site com muitas imagens.
O Cloudflare está bom - basta desativar o recurso Rocket Loader deles.
Sem esforço de configuração, ele economiza metade da largura de banda de volta para o meu servidor.
Pode ser que anos atrás o Cloudflare não funcionasse bem com o Discourse, mas hoje não é verdade. Seria bom se não continuássemos vendo dúvidas sobre isso. Se alguém tiver um problema específico, deve iniciar um tópico de suporte aqui descrevendo o que não está funcionando.