KHAN [session manager]는 대규모 클러스터링 환경에서 사용자에게 투명하게 하나의 시스템으로 보일 수 있도록 세션 클러스터링 기능을 제공하는 WAS 고가용 솔루션입니다.
지금까지 WAS 에 저장되던 세션 영역을 제거하고 이를 데이터그리드 영역에서 저장/관리하여 웹 시스템의 가용성과 확장성을 높여 줍니다.
이러한 아키텍처를 이용하여 여러 종류 제품의 WAS 인스턴스 간의 세션공유나 서로 다른 웹 애플리케이션의 간의 세션 공유를 지원합니다.
또한 Clustering 기능이 미비한 Tomcat 인스턴스 간의 세션 클러스터링도 지원합니다.

세션 클러스터링 이슈

  • 동작중인 다수의 WAS 중 고객이 접근한 서버에 이슈가 발생할 경우, 서비스 이용을 위해 고객들은 ‘다시 로그인’하는 것 이외에 다른 행동을 할 수 없습니다.
  • WAS 장애 시 발생한 Session 정보 유실로 인한 재접속은 추가 부하를 발생시킬 뿐 아니라, 고객 불만과 불편을 유발합니다.

Active-Active 구성

  • 쇼핑몰과 교육 등 서비스의
    필수 기능 클러스터링
  • WAS는 Active-Active 구성이 기본
  • 클러스터링 문제로 배포 이슈 발생
  • Apache Tomcat 을 위한 클러스터링

대규모 사용자 접속 시 문제

  • 특정 시간에 사용자가 폭주하는 경우
  • WAS 메모리 이슈 때문에 문제
  • WAS에 의존적이지 않은
    클러스터링 구성

KHAN Session Manager 개요

Session Clustering은 Session 정보를 해당 서버에만 보존하는 것이 아니라, 이웃한 다른 서버나 Session 서버, DB에 저장하여  장애가 발생하면 저장된 위치에서 Session을 복구하여, 다른 서버로 처리가 되는 경우라도 동일한 Session을 유지하는 기능입니다.

분산되어 있는 다수의 WAS Instance를 세션을 공유하는 하나의 논리적인 그룹으로 묶어 서비스 요청에 대한 고객 입장의  위치 투명성을 제공하며, 부하분산 및 장비나 서버의 장애 시 자동 Session Failover를 제공합니다.

Tomcat , JBoss , WebLogic 이 기종 WAS 간 세션 클러스터링 데모

Tomcat 과 JBoss 간 세션 클러스터링 데모

Tomcat , JBoss , WebLogic 간 세션 클러스터링을  KHAN [session manager] 을 이용하여 구성한 데모를 동영상으로 설명합니다.
KHAN [session manager]는 서로 다른 웹애플리케이션 서버 간과 다른 애플리케이션 간에 세션 클러스터링을 제공합니다.

세션 클러스터링 데모

KHAN Session Manager의 주요기능은 ?

  • Servlet 2.5 이상을 지원한 WAS 서버에 대한 세션 클러스터링 지원
    (현재 테스트 서버 : JBoss EAP 6.x, Tomcat 7.x, WebLogic 11g, 계속 테스트 중)
  • Data Grid Library 를 사용하여 WAS 내의 메모리를 사용하여 클러스터링 지원
  • 별도로 Data Grid 서버를 구성하여 세션 데이터그리드 형태 지원
  • 서로 다른 웹 애플리케이션 간의 세션 공유 기능
  • 웹 애플리케이션에서 중복 로그인 방지 기능
  • 세션 정보에 대한 모니터링 기능
    (Active 세션 개수, 세션 생성/소멸 개수, 중복 로그인 횟수, 초당 세션 생성/소멸/중복로그인 횟수에 대한 MBean 모니터링)
  • 세션에서 사용하는 메모리 사용량 모니터링
  • 주요 Static Contents에 대해 세션을 생성하지 않도록 필터링
  • 인 메모리 데이터그리드 기반
    세션 클러스터링
  • 이 기종 WAS와 웹 애플리케이션
    간의 세션 정보 공유
  • Apache/tomcat 환경에서 세션 공유
  • 중복 로그인 방지

KHAN Session Manage 주요 장점

애플리케이션에서 사용되는 세션 정보를 인메모리 데이터그리드에 저장하여 애플리케이션 서버에서 세션 정보를 유지하는 영역을 없애기 때문에 가용성, 확장성, 개발 효율성을 확보할 수 있습니다.

  • 대량의 세션 정보 저장

    예기치 못한 대규모 사용자 접속에서도 간단하게 데이터그리드 노드를 추가하여 기존의 응답시간을 유지할 수 있습니다.

  • WAS 고가용성 확보

    세션을 저장하는 데이터그리드 영역에 대한 백업을 설정하여 장애가 발생한 경우에도 세션 정보가 손실되지 않고 애플리케이션을 계속 사용할 수 있습니다.

  • 개발 및 관리 공수 절감

    세션에 대한 저장 공간을 유연하게 확장 할 수 있기 때문에 애플리케이션에서 다루는 세션 크기를 특별히 의식하지 않고 프로그래밍 할 수 있습니다. 또한, 기존 애플리케이션에 대한 수정없이 간단하게 설치할 수 있습니다.

애플리케이션 서버로 부터 세션 정보 관리 부분을 데이터그리드 영역으로 분리하여 복잡한 세션 복제 설정 등에 대한 애플리케이션 고가용 부분에 대한 구축이 더 이상 필요 없습니다.
대규모 클러스터링 구성과 로드 밸런서에서 세션 배분 설정이 매우 용이하게하고, 유지 보수 등의 관리면에서의 작업공수를 줄일 수 있습니다.

영업문의