API Sockets para serviços agrupados antigos


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
  • 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.