database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
ㆍPostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
PostgreSQL Q&A 7305 게시물 읽기
No. 7305
클라이언트가 접속이 끊어졌는지 실시간으로 감시는 어떻게?
작성자
심상호(shimsh)
작성일
2008-01-14 06:24
조회수
5,811

같은 사용자 이름으로 한 디비에 여러 개를 접속해서 사용하고 있습니다.

같은 이름으로 접속은 하지만 따로 한 테이블을 만들어서 그곳에서 각각의 접속 사용자

구분하고 관리합니다.

 한 클라이언트에서 중간에 끊기면 그 사실을 사용자 구분 테이블에 자동으로 넣어 처리를

하려고 하는데 실시간으로 감지할 수 있는지요?

client_port는 서로 구분이 가능하던데요

이 글에 대한 댓글이 총 1건 있습니다.

방법은 두가지일터인데요, 
하나는 그 클라이언트가 "나 끊긴다"고 알려주어서 처리하는 방법이고, 
다른 하나는 서버가 모든 클라이언트를 감시해서, 끊겼으면 로그를 남기를 방법이겠죠. 

후자 쪽이 가능하게 할 방법은 
db 차원에서는 pg_stat_activity 뷰를 이용하는 방법과, 
os 차원에서는 netstat 명령을 이용하는 방법이 있겠죠. 
비용은 둘다 거기서 거기일 것 같습니다.
작업하기 편한 것으로 선택하면 될 듯합니다. 

문제는 서버쪽 감시 프로그램의 피할 수 없는 단점은 잘 알다시피 
모든 클라이언트를 주기적으로 감시해야합니다. 
클라이언트가 많아지면 많아질 수록 그 비용은 무시 못하게 되지요. 

그래서, 이런 문제는 대부분 
DB 서버 - 미들웨어 - 클라이언트 
이런 형태로, 그런 로그 처리와 DB서버의 병목현상을 줄이기 위해서, 
그 일들을 미들웨어가 담당합니다. 
미들웨어를 어떻게 만드느냐는 알아서 하세요.


김상기(ioseph)님이 2008-01-14 21:12에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
7308Array data type 바인딩 [4]
최명진
2008-01-16
5669
7307사용자 생성중 [2]
초짜군
2008-01-16
6413
7306./configure 시 문제가 생깁니다.(다시) [2]
도움좀
2008-01-15
6262
7305클라이언트가 접속이 끊어졌는지 실시간으로 감시는 어떻게? [1]
심상호
2008-01-14
5811
7304RANK 쿼리문을 만들어 봤습니다. [1]
tyro
2008-01-11
6315
7303view 에서 rule적용 질문 (update, insert, delete) [8]
전홍준
2008-01-11
6625
7302postgresql 초기 설치 방법 [1]
권태영
2008-01-09
10520
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다