Background Image

FORUM

2013.08.02 03:18

HA 로드 밸런싱 관련

조회 수 9303 추천 수 0 댓글 3
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS

CUBRID Ver.
9.1
CUBRID TOOL Ver.
[도움말]-[버전정보] 확인
응용 환경(API)
java, php, odbc 등 입력

* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------
안녕하세요


두대의 서버로 HA 구성할려고 검토 중입니다. 브로커 서버가 없으므로 두대서버의 브로커는 모두 RW모드로 동작할 것입니다.


릴리즈 노트를 보면 (그런데 loadbalance로 매뉴얼에 검색해도 안나오네요...)

CCI, JDBC의 연결 URL에 altHosts를 포함하는 경우 응용 프로그램이 메인 호스트와 altHosts에 지정한 호스트들에 임의의 순서로 연결되게 하는 기능을 추가했다. 아래의 예와 같이 연결 URL의 loadBalance의 값을 true로 설정하는 경우 해당 기능이 동작된다.


loadbalance=true 드라이버에서 랜덤 접속한다고 나와 있습니다.


매뉴얼의 HA부분에서 RW 브로커 모드를 보면

  1. 연결되어 있던 서버가 있으면 해당 서버와 연결을 시도하고, 해당 서버의 상태가 active이면 연결 완료
  2. databases.txt 에 설정된 호스트에 순차적으로 연결을 시도하여 서버의 상태가 active이면 연결 완료
  3. databases.txt 에 설정된 호스트에 순차적으로 연결을 시도하여 최초 연결 가능한 서버와 연결 완료

RW 브로커는 active 서버에만 접속 한다는 것을 알 수 있습니다.


RO브로커가 없는 상태에서 어느 서버에 접속하든 브로커에서 마스터로 접속 하는게 맞는 건가요?

loadbalance=true 인 상태에서는 브로커 모드에 관계 없이 랜덤 접속 인가요?


요즘 답글이 잘 안달리는걸 보니 담당자 휴가 이신가 보네요 ^^


즐거운 휴가 보내세요~


  • ?
    CUBRID_DEV 2013.08.02 03:51

    loadbalance는 연결url에서 지정할 수 있는 프로퍼티 중 하나입니다. 매뉴얼:

    http://www.cubrid.org/manual/ko/9.1.0/api/jdbc.html

     

    1) loadbalance=true 인 상태에서는 브로커 모드에 관계 없이 랜덤 접속 인가요?

    네 그렇습니다.

     

    2) RO브로커가 없는 상태에서 어느 서버에 접속하든 브로커에서 마스터로 접속 하는게 맞는 건가요?

    응용이 어느 브로커로 붙을 것이냐를 판단할 때는 connection url에 명시한 브로커주소와, althosts에 있는 브로커주소들입니다.

    그리고 그 브로커들이 어느 DB에 붙을 것이냐는, databases.txt/HA관련 설정을 보고 판단하는 것입니다.

     

    질문을 다시 해석해서, 브로커1이 RW, 브로커2가 RW이고 loadbalance=true 이면, 응용은 브로커1/브로커2에 랜덤하게 접속할 것이고, 두개 브로커 모두 HA nodes중 현재 active상태인 마스터DB로 우선 접속하게 될 것입니다.

     

    만약, 브로커1이 RW, 브로커2가 RO이고,   loadbalance=true 이면, 응용은 브로커1/브로커2에 랜덤하게 접속할 것이고, 응용이 브로커1에 붙을 때는 마스터DB로 우선 접속할 것이고, 브로커2에 붙을 때는 슬레이브DB로 우선 접속할 것이므로 응용이 의도치않은 에러(예: insert fail)를 맞을 수 있습니다.

     

     

     

     

  • ?
    소라게 2013.08.02 18:47

    답변 감사드립니다.


    결론적으로 스탠바이서버에 select 쿼리 부하를 분산 시키기 위해선 반드시 RO 브로커가 있어야 하는게 맞는지요?


    같은 DB에 대해 한서버에서 RW, RO 브로커 두개를 운용 할 수 있는 방법이 있는지요?

  • ?
    CUBRID_DEV 2013.08.02 19:15

    1) 결론적으로 스탠바이서버에 select 쿼리 부하를 분산 시키기 위해선 반드시 RO 브로커가 있어야 하는게 맞는지요?

    답변: 스탠바이서버에 "우선적으로 접속하여" select 쿼리 부하를 분산 시키기 위해선 반드시 RO 브로커가 있어야 합니다.

     

    2) 같은 DB에 대해 한서버에서 RW, RO 브로커 두개를 운용 할 수 있는 방법이 있는지요?

    네 브로커는 DB와는 별도 프로세스이므로, 한 장비에서 두개 이상 띄우고 모드를 다르게 설정하여 사용하실 수 있습니다.

    nhn에서도 select쿼리를 날리는 특정 응용(예: daily 통계배치)을 위하여 RO모드/SO모드 브로커를 추가로 띄워서, 해당 브로커로만 접속하여 긁어가도록 운영합니다.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 51
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4458
3994 "DATABASE 검사" 도무지 끝날 기미가 안 보입니다 5 한종희 2011.08.02 8583
3993 "DBMS, 0, Unknown DBMS error" 요건 무슨 애러인가요?;; 2 eitetu 2011.06.02 14296
3992 "Token length is too long" 오류에 관하여 질문 드립니다. 4 file 김우람 2009.01.09 21478
3991 & 등의 특수문자등이 변환되어 저장되는 경우 1 호랑이야옹 2012.12.28 10681
3990 ' 의 입력 방식이 궁금합니다. 1 이석희 2009.04.10 13422
3989 (1개의 댓글은 작성자가 썼습니다.)비주얼 베이직 큐브리드 연동후 동시에 여러 테이블 보는 방법문의 2 secret 강남우 2012.12.21 58
3988 (Re:) 회원가입이 3명이상 안돼요... 6 딩이 2010.07.08 7595
3987 (python)centOS7 docker 연결 문의입니다. 리얼비 2021.11.01 108
3986 (댓글 질문등록 했습니다.)이전글, 다음글 기능(LAG, LEAD) ORDER BY절 FOR ORDERBY_NUM() 추가해도 그대로 입니다 3 취우다 2017.04.19 5960
3985 (함수)펑션 오류 확인부탁드립니다. 1 초코초코초 2023.02.10 102
3984 *variable* 에러 1 hwon 2013.06.14 11619
3983 ++ cubrid server start: fail 2 file 토네이도 2013.09.13 13701
3982 -74 오류 조치 방법 1 덜쇠 2013.08.07 7643
3981 .AccessViolationException (C#) 1 swift 2021.06.03 220
3980 .NET 4.5 에서의 NHibernate 문제, .NET 4.0 에서 NHibernate + TransactionScope 활용 문제. 1 websiter 2017.06.09 2057
3979 .NET DB 제어를 위한 방법. 2 우페 2008.11.23 60878
3978 .net db목록 관련 질문 드립니다. 4 파인 2021.03.05 134
3977 // 를 사용하고 싶습니다. 1 죽통군 2010.02.10 9583
3976 /etc/hosts 파일 수정 1 secret chocob 2014.10.13 13
3975 /etc/rc3.d/S98cubrid 화일 좀 바꿔주세요 1 꽁꽁단무지 2017.01.25 12246
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales