Pergunta

Ao usar a comunicação de soquete em PHP, que eu preciso para confirmar se a mensagem foi recebida com sucesso após o envio de cada mensagem? Ou será que a camada de transporte (TCP) cuidar de detecção e correção de erros, garantindo a entrega bem sucedida de todas as mensagens enviadas?

Foi útil?

Solução

Você não precisa se preocupar com tais coisas a este nível. Depois de gravar os dados em um soquete aberto, você pode ter certeza que ele acabará por chegar corretamente (assumindo que há uma rota entre os pontos finais). O que você deve tomar cuidado é os valores de retorno de funções de soquete. Verifique todas valores de retorno das funções socket_* para uma comunicação confiável.

Outras dicas

O TCP detecção e correção de erros, tanto quanto ele vai. Não há realmente tal coisa a como garantindo entrega bem sucedida (cf. retroescavadeira desvanecimento ), por isso há algum nível em que você precisa levar em conta a possibilidade de que a mensagem não será entregue.

Você pode acreditar seguramente que os dados foram recebidos com sucesso se a função php não apontar qualquer erro específico.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top