Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[15690] Re:twebbrowser문제 좀 해결해 주세요.
정영훈 [allinux] 1844 읽음    2016-04-24 03:57
두가지 관점에서 봐야 합니다.
첫째 polling 으로 처리하는 방법을 개선할 수 있습니다.
둘째 웹서버를 동기적 처리를 하는 아파치나 IIS 대신 Nginx 와 같은 비동기 이벤트 기반 데몬으로 변경할 수 있습니다.

첫째는 실시간 대응을 위해 폴링형태로 처리하는듯 보이는데 이는 쓸데없는 오버헤드만 발생시킵니다.
HTML5 의 websocket 를 활용하는 방법이 가장 낫습니다.

둘째는 아파치나 iis는 쓰레드 생성에 제한이 있을 수 밖에 없습니다. 즉 많은 request 를 처리할 수 없다는 의미 입니다.
많은 request를 처리하기 위해서는 비동기처리가 가장 나은 대안입니다.
Nginx 가 대표적인 웹서버이고 iis도 비동기 처리가 지원된다고 알고 있습니다.

첫눈 님이 쓰신 글 :
: 폼 위에 twebbrowser를 올려놓고 웹페이지를 불러옵니다.
: html에서는 자바스크립트로 일정시간 마다 페이지를 다시 불러와 실시간 데이터를 보여주도록 했구요.
:
: 그런데 특정시간에 사용자가 집중되면 웹서버가 폭주해서 죽어버립니다.
:
: 이걸 해결하기 위해 webbrowser의 BeforNavrgate이벤트에서
: Cancel := true;를 하고 url을 mht파일로 저장한 후
: 저장된 mht파일을 webbrower에 보여주도록 했습니다.
:
: 이렇게 하니 일단 페이지 에러 화면이 나타나는건 해결 됬는데
: 문제는 url을 mht로 저장할때
: 서버가 죽어 mht파일을 저장하는 시간이 오래 걸리고
: 그동안 컴퓨터가 엄청나게 느려집니다.
:
: 일정시간이 지나 mht파일 저장에 에러가 발생하고 나면 다시 정상으로 돌아오구요.
:
: 결국 근본적인 해결 방법은 서버증설인듯 한데 이런 증상이 어쩌다 발생하는 것이고 평소에는 서버 부하가 거의 없다보니 서버에 비용을 투자하는 것도 방법은 아닌 듯 합니다.
:
: 이 문제를 어떻게 해결해야 할까요?

+ -

관련 글 리스트
15689 twebbrowser문제 좀 해결해 주세요. 첫눈 1726 2016/04/23
15690     Re:twebbrowser문제 좀 해결해 주세요. 정영훈 1844 2016/04/24
15691         Re:Re:twebbrowser문제 좀 해결해 주세요. 첫눈 1765 2016/04/24
15692             Re:Re:Re:twebbrowser문제 좀 해결해 주세요. 정영훈 1800 2016/04/25
15694                 Re:Re:Re:Re:twebbrowser문제 좀 해결해 주세요. 첫눈 1821 2016/04/25
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.