jQuery Polling Example을 실험하던 중 IE에서는... 시간 절약

* 예제의 출처: http://techoctave.com/c7/posts/60-simple-long-polling-example-with-javascript-and-jquery

jQuery로 오래 걸리는 작업을 ajax로 호출하고 진행 사항을 모니터링해야할 일이 있었습니다. 여러 가지 방법들이 있겠고, Comet과 같이 서버 쪽에서 뭔가 하는게 멋있어 보이기는 하는데 좀 번거로운 느낌이 들었습니다. 

그래서, 위 예제 출처에서 다음 코드를 발견하여 처리를 했더니 잘 동작했습니다.

(function poll(){
    $.ajax({ url: "server", success: function(data){
        //Update your dashboard gauge
        salesGauge.setValue(data.value);

    }, dataType: "json", complete: poll, timeout: 30000 });
})();

좋아라 하고 있는데, 우리의 MSIE에서는 과감하게 다운이 되더군요. CPU 50% 점유와 함께... 크롬에서는 잘 됩니다.~ 

처음에는 long polling에 대해 찾기는 했는데, 나중에 필요했던 것은 금방 리턴되는 php를 call하는 것이었으므로, 평범한 폴링 방식으로 바꾸었습니다. 역시 같은 출처의 예제인데요.

setInterval(function(){
    $.ajax({ url: "server", success: function(data){
        //Update your dashboard gauge
        salesGauge.setValue(data.value);
    }, dataType: "json"});
}, 30000);

어찌되었든 위 출처의 사이트를 한번 참고할만합니다. 웹쪽은 아직 1년 밖에 안해봐서, 깊이있는 이야기는 PASS합니다^^

덧글

댓글 입력 영역