|
DB에 관련해서는 잘 모르기 때문에, 제가 겪었던 상황으로만 설명해 드리자면,
저는 linux, my-sql을 사용했었는데, my-sql은 (아마도 모든 db가 그러겠지만)
일정시간동안 쿼리가 없으면 자동으로 세션을 종료시켜 버립니다.
그런 상황이 오면 다시 커넥션을 하고 처음부터 다시 작업을 시작해야 하는데,
(아래 DB->Open이 커넥션까지 해주는지, 커넥션이 종료되었을때 클라이언트까지
신호가 제대로 오지 않아 디스커넥션까지 같이 해야하는지는 잘 모르겠습니다)
이러한 상황에서는 조금 빠른 response를 얻어야 하는 상황이라면 재 연결시도는
적합하지 않아, 설정에서 디스커넥까지 걸리는 시간을 좀 늘려주고, 일정 시간동안
쿼리가 없을때는 ping 정도로 생각해서 빈 쿼리를 날려주는 그런 루틴을 만들었습니다.
cuperido
하안인 님이 쓰신 글 :
: os는 win-nt 이고 빌더5로 두개의 서버에 연결합니다.
: A서버는 win-nt이고 B서버는 window2000서버입니다.
: 똑같은 내용을 두개의 서버에 데이타를 보내는데
:
: 프로그램에서 처음에 두개의 데이타베이스에 연결하고
: (물론 odbc가 2개)
:
: DB->Open();
: DB->Append();
: ..
: DB->Post();
: DB->Close();
:
: 해서 하나의 레코드를 삽입하는 것입니다.
:
: 그런데 문제는 2~3일 한번씩 windows2000서버의 연결이 끊어져
: 데이타를 다시 실행시키기 전에 데이타 삽입이 안됩니다.
:
: 어떤 이유에서라도 데이타베이스의 연결이 끊어져도
: DB->Open(); 일때 데이타베이스가 연결안되어 있으면
: 자동적을 연결하지 않나요.
:
: 다른 서버는 odbc로 끊김없이 잘 삽입되는데
: 어떤것을 체크해 보아야 하는지요.
|