장기 폴링은 장기간 연결을 유지하여 서버 업데이트가 가능해지면 즉각적인 응답을 촉진하는 폴링 기술입니다. 구현은 매우 간단할 수 있습니다.
Apache를 사용하여 요청을 처리하려면 msgsrv.php와 같은 PHP 스크립트를 생성하십시오. 다음은 간단한 예입니다.
// Simulate data availability after a random delay sleep(rand(2, 10)); echo("Hi! Here's a random number: " . rand(1, 10));
Apache에서 이 스크립트를 실행하세요. Apache와 같은 대용량 웹 서버를 사용하면 작업자 스레드가 소진될 수 있습니다.
JavaScript에서는 long_poller.htm과 같은 스크립트를 사용하여 폴링 요청을 시작할 수 있습니다.
<script> function waitForMsg() { $.ajax({ type: "GET", url: "msgsrv.php", async: true, cache: false, timeout: 50000, success: function(data) { // Append the response to a div addmsg("new", data); // Continue polling after 1 second setTimeout(waitForMsg, 1000); }, error: function(..., errorThrown) { // Append error to div addmsg("error", textStatus + " (" + errorThrown + ")"); // Retry after 15 seconds setTimeout(waitForMsg, 15000); } }); } $(document).ready(function() { waitForMsg(); // Start the initial request }); </script>
이 스크립트는 msgsrv.php에 지속적으로 요청을 보내 응답을 div에 표시합니다. 과도한 요청을 방지하기 위해 간단한 속도 제한기를 사용합니다.
장기 폴링은 탄력성과 단순성을 제공합니다. 네트워크 중단이 발생하면 클라이언트가 자동으로 재시도합니다. 인스턴트 메시징이나 채팅 애플리케이션과 같이 서버에서 즉각적인 업데이트가 필요한 애플리케이션에 적합한 선택입니다.
위 내용은 Apache 및 JavaScript를 사용하여 기본 긴 폴링을 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!