O tráfego de sockets é faturado como largura de banda de saída. O App Engine suporta sockets de saída através do pacote
appengine/socket
.
As bibliotecas que podem aceitar um net.Conn
devem funcionar sem modificação.
Limitações e restrições
O suporte de sockets no App Engine tem as seguintes limitações:
- Não pode criar um socket de escuta; só pode criar sockets de saída.
- O FTP não é suportado.
- Só pode usar TCP ou UDP. Não são permitidos protocolos arbitrários.
- Não pode associar a endereços IP ou portas específicos.
- A porta 25 (SMTP) está bloqueada. No entanto, pode continuar a usar o SMTP autenticado na porta de envio 587.
Os intervalos de IP privados, de transmissão, de multicast e da Google estão bloqueados, exceto os indicados abaixo:
- DNS público da Google:
8.8.8.8
,8.8.4.4
,2001:4860:4860::8888
,2001:4860:4860::8844
porta 53 - SMTPS do Gmail:
smtp.gmail.com
portas 465 e 587 - Gmail POP3S:
pop.gmail.com
porta 995 - IMAPS do Gmail:
imap.gmail.com
porta 993
- DNS público da Google:
Os descritores de sockets estão associados à app do App Engine que os criou e não são transferíveis (não podem ser usados por outras apps).
As portas podem ser recuperadas após 10 minutos de inatividade. Qualquer operação de porta mantém a porta ativa durante mais 10 minutos.
Usar sockets com o servidor de desenvolvimento
Pode executar e testar código com sockets no servidor de desenvolvimento sem usar parâmetros especiais da linha de comandos.