eGovFrame 표준프레임워크 포털

메뉴 건너띄기
상단메뉴 바로가기
본문 바로가기

이 누리집은 대한민국 공식 전자정부 누리집입니다.

본문 영역

적용 지원, FAQ, Q&A 게시판을 통해 기술 문제 해결을 지원합니다.

묻고 답하기

EgovTableIdGnrService 관련하여.
  • 작성자

    나*주

  • 작성일

    2014-01-21 09:44:41

  • 조회수

    962

  • 구분

    실행환경

  • 진행상태

    완료

질문

각 테이블의 아이디 생성 시에 해당 기능을 사용하고 싶습니다.

헌데 운영환경은 WAS가 이중화하여 동일한 서비스에 대하여 컨테이너가 여러개 올라가게 되는데요.

이 경우에 blockSize를 1로 하면 유니크한 아이디를 얻을 수 있는건가요?

내부적으로 max 쿼리를 사용하여 가져오는 것인가요? 동시간적으로 가져오도록 하였을 때에도 유니크한 아이디를

얻을 수 있는것인지 궁금합니다. ( 트랜잭션과 상관없이 유니크한 키값으르 얻을 수 있는건가요? )

답변

안녕하세요. 나형주님.

DB 테이블이나 시퀀스 기반이기 때문에 WAS가 이중화 되어 있어셔도 사용가능하십니다. (중복되지 않음)

다만, 이중화된 상태에서 blockSize가 1 이상인 경우는 생성되는 시점과 순서가 일치하지 않을 수 있습니다.

blockSize만큼 증가 시킨 후에 DB 상에 기록한 후에 메모리 상에 생성된 id를 제공하기 때문입니다.

생성되는 순서가 중요하신 경우라면 blockSize를 1로 하시고, 그렇지 않으신 경우라면 blockSize를 1 이상으로 설정하시면 되실 것 같습니다.

그럼, 즐거운 하루되십시오.
감사합니다.

이 페이지의 구성

묻고 답하기