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 10142 게시물 읽기
No. 10142
HA JDBC Connection 관련하여 조언을 구합니다.
작성자
레인버그(레인버그)
작성일
2020-03-17 19:48ⓒ
2020-03-17 19:50ⓜ
조회수
2,453

안녕하세요. 현재 PostgreSQL 11버전을 사용하여 HA 구성을 하고 있습니다.

HA관련해서 Repmgr을 사용합니다.

jdbc.postgresql.org의 설정을 참조하여

URL : jdbc:postgresql://{node2},{node1}/Database?targetServerType=master로 setting 하였습니다.

공식문서상 targetServerType을 설정하면 was에서 connection을 찌를때 node2를 먼저 찌르고

Standby시에는 조회를 하고 dml이라면 node2를 찌르고 node1을 찔러서 dml 작업이 되는걸로 이해했습니다.

이게 맞는건지요?

해당 setting후 1차 connection은 정상적으로 되었으나, Failover를 하면 was에서 Connection close가 발생을 합니다.

제 생각으로는 node2가 정상적으로 primary로 승격했으니 맺어져있는 connection은 한번 fail이 될지라도 Primary로

승격한 DB에 정상적으로 동작을 할것으로 예상했습니다.

현재 was(tomcat)에서 connection을 잡고있는게 있을거 같다는 생각이 드는데..

다른 확인사항이 뭐가 있을지 조언을 구합니다.

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

제가 알고 있는 버전으로는 master나, slave 값은 그냥 그 조건에 맞으면 그걸로 접속하고, 나머지는 신경쓰지 않다가, 접속했던 노드가 접속이 불가능할 때 다른 노드를 그 성격의 노드로 접속을 시도하는 것으로 알고 있습니다.

 

원하는 일단 slave 로 접속하다가, 그 연결들이 끊기면 최종적으로 master 노드일지라도 접속하겠다.

이 설정이라면, preferSecondary 값을 사용합니다.

 

tomcat 과, jdbc 만으로 master 노드의 가상 IP 같은 것 없이 사용한다면,

읽기쓰기 가능한 연결과 읽기 전용 연결 두개로 분리해서 그 두개를 사용하는 응용프로그램을 만드셔야합니다.

 

김상기(ioseph)님이 2020-03-17 20:13에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
10145인코딩에러 [1]
aa
2020-03-23
2639
10144대소문자 바꾸는 방법.. [1]
김현준
2020-03-22
2274
10143pg_log 내용중 "KSTFATAL: database "xxxxxxx" does not exist [3]
탁구공
2020-03-19
2273
10142HA JDBC Connection 관련하여 조언을 구합니다. [1]
레인버그
2020-03-17
2453
10140postgresql 한글깨짐 [6]
soo
2020-03-09
3326
10139Postgresql select 시 컬럼추가 하려면 mysql 처럼 하면 되는지 [3]
박주용
2020-03-05
2380
10138max_worker_precesses 와 parallel work 의 구조 궁금합니다. [1]
joker
2020-03-03
2274
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.047초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다