O que são Long-Polling, WebSockets, SSE e Comet? Como implementá-los em PHP?
Olá a todos! Sou um desenvolvedor PHP iniciante e recentemente me deparei com uma tarefa: preciso fazer um chat no site para que as mensagens cheguem sem recarregar a página. Conheço AJAX, mas lá preciso enviar requisições constantemente, o que não é eficiente. Comecei a pesquisar e me deparei com os termos: Long-Polling, WebSockets, Server-Sent Events (SSE) e Comet. Sinceramente, fiquei confuso.
Até onde entendo: Long-Polling é quando o cliente envia uma requisição e o servidor a mantém aberta até que uma nova mensagem apareça. Mas como implementar isso em PHP? PHP é single-thread, não pode ficar pendurado por muito tempo, senão a memória cai. WebSockets é uma conexão permanente, mas ouvi dizer que PHP não é muito adequado para isso, sendo melhor usar Node.js ou Go. Já SSE é algo como um fluxo de dados do servidor para o cliente, mas parece que funciona apenas em uma direção. Comet soa como algo antigo.
Aqui está um exemplo simples de polling AJAX que estou usando atualmente (em PHP):
```php
// poll.php
$lastId = $_GET['last_id'] ?? 0;
$m
No answers yet.
Faça login para deixar uma resposta