Portais web geralmente servem recursos estáticos, como imagens, texto e vídeos. Se o seu site for composto principalmente por arquivos pequenos e imagens, selecione Image and Small File como tipo de negócio. Caso possua grande volume de conteúdo de vídeo e áudio, selecione VOD. Este tutorial usa testcdn.top como exemplo para demonstrar como usar o Alibaba Cloud CDN para acelerar a entrega de recursos do OSS no tipo de negócio Image and Small File.
Benefícios de desempenho
Uma sondagem de rede feita com o Application Real-Time Monitoring Service (ARMS) do Alibaba Cloud comparou a URL direta de um recurso do OSS com seu nome de domínio acelerado por CDN. Confira os resultados a seguir.
Os resultados de uma sondagem de rede podem variar conforme as condições da rede.
A sondagem indicou que o domínio acelerado por CDN apresentou 100% de disponibilidade, com tempo médio de resposta de 712,44 ms. Em contrapartida, as conexões diretas ao recurso do OSS falharam, resultando em 0% de disponibilidade e tempo médio de falha das requisições de 1,1 s.
Com base nesses dados, o uso do Alibaba Cloud CDN melhora o tempo de resposta em aproximadamente 35%.
Pré-requisitos
Ative o Alibaba Cloud CDN. Caso ainda não tenha ativado, consulte Activate Alibaba Cloud CDN.
Tenha uma origem estável, como seu próprio servidor ou um bucket do OSS. Se você não possui uma origem, consulte Create an ECS instance ou Create a bucket.
Adicione um nome de domínio
Faça login no console do Alibaba Cloud CDN.
No painel de navegação à esquerda, clique em Domain Names.
Na página Domain Names, clique em Add Domain Name.
-
Na página Add Domain Name, defina Region como Global (Excluding Chinese mainland), insira
images.testcdn.topem Domain Name to Accelerate, selecione Image and Small File para Business Type e escolha Default Resource Group em Resource Group.ImportanteAo adicionar um nome de domínio pela primeira vez, verifique sua propriedade. Para mais informações, consulte Verify the ownership of a domain name.
Clique em Add Origin. Na página Add Origin, selecione OSS Domain como tipo de Origin Information, escolha o Bucket Domain para Public Access, defina Primary como Priority, insira 10 em Weight e 80 em Port.
Marque a caixa de seleção para concordar com o Data Cross-border Compliance Commitment, clique em Next e, em seguida, clique em Back to Domain Management.
Configure um registro CNAME
Na página Domain Names, localize o nome de domínio adicionado e copie seu valor CNAME.
Faça login no console do Alibaba Cloud DNS.
Na página Public DNS, localize o domínio raiz
testcdn.tope clique em Configure na coluna Actions.Na página DNS Settings, clique em Add Record. Em Record Type, selecione CNAME. No campo Hostname, insira
images. Para DNS Request Source, selecione Default. Em Record Value, insira o valor CNAME copiado na Etapa 1.
Solução de problemas
Descrição do problema
Após adicionar o nome de domínio e configurar o registro CNAME, o acesso ao recurso acelerado retorna um erro 403.
E:\>curl -v http://images.testcdn.top/pic_03.jpg
* Trying 12xxx 9:80...
* Connected to images.testcdn.top (1xxx) port 80
> GET /pic_03.jpg HTTP/1.1
> Host: images.testcdn.top
> User-Agent: curl/8.4.0
> Accept: */*
>
< HTTP/1.1 403 Forbidden
< Server: Tengine
Solução
Esse erro indica que o bucket do OSS é privado. Para manter a segurança, conceda acesso ao Alibaba Cloud CDN ao seu bucket privado em vez de torná-lo público. Siga estas etapas:
No console do Alibaba Cloud CDN, na página Domain Names, localize o nome de domínio acelerado
images.testcdn.tope clique em Manage.Na página de gerenciamento de domínio, clique na aba Origin Fetch. Na seção Alibaba Cloud OSS Private Bucket Access, ative a chave Status e selecione Bucket in the Same Account para Type.
-
Tente acessar o recurso novamente. O carregamento deve ocorrer corretamente agora.
E:\>curl -v http://images.testcdn.top/pic_03.jpg * Trying 12xxx9:80... * Connected to images.testcdn.top (1xxx9) port 80 > GET /pic_03.jpg HTTP/1.1 > Host: images.testcdn.top > User-Agent: curl/8.4.0 > Accept: */* > < HTTP/1.1 200 OK < Server: Tengine < Content-Type: image/jpeg < Content-Length: 8775526