묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
Ajax.PeriodicalUpdater
2009.12.28 21:07
댓글 1
-
라르게덴
2009.12.29 16:15
-
시니시즘
2009.12.29 21:20
와 실제로 구현 해보신 분의 너무나도 상세한 답변 정말 감사드려요!!! 님같은 분을 찾고 있었어요^^; 너무 많은 도움이 될거 같아요. 혹시나 구현중에 질문이 있으면 쪽지로 물어봐도 되죠?^^
차이점 등은 설명을 못하겠는데요. 실시간 알림을 만들어본 입장으로 말씀드릴게요.
우선 정보를 일반 페이지에서 정해진 시간마다 그대로 뽑아오게되면 과부하가 걸리게 됩니다.
애드온으로 Context::setResponseMethod("XMLPRC"); 와 같은 처리를 하고 db 쿼리로 가공하는 방법도 있는데요.
효과적이고 부하를 걸리지 않게 하실려면 모듈을 제작하시는걸 추천합니다.
setInterval로 시간 조절 했었고요, ajax를 이용하여
첫번째 접속 대상은 내가 대상으로하려는(글,댓글,카운터,쪽지 등) 내용을 db 쿼리하여 최근시간에 업데이트 된게 있는지 파악해 0과 1의 데이터를 남깁니다.
(모든 기본 접속은 이걸로 반복)
1일 경우 다음스텝으로 ajax하여 어떤 대상인지 살피시고 그 대상의 내용을 가져오셔서 이벤트를 취하시면 되겠습니다.
다른 하나는 쪽지의 경우 생성(다른이에게 쪽지보내기)하게되면 files안에 각 회원의 정보에 파일이 생성 되게 됩니다.
파일의 존재를 ajax하여 존재할 경우 이벤트를 취하도록 하면 될 것 같습니다.(이건 제가 애드온으로 제작한게 과거 자료실에 있습니다.)
쪽지원리를 이용해서 한다면 각 원하는 정보에 대해 미리 애드온 등으로 글이 작성되거나, 댓글이 작성될때 특정 파일을 생성시키고 ajax로 해당 파일 유무를 관찰한 후 이벤트를 취한다면 db 억세스를 줄여줄수있어 이것도 좋은 방법이겠네요.