Java 웹 세션 NCache

세션 개별 사용자에 대한 데이터를 저장하는 방법입니다. Java Servlet 또는 JSP(Java Server Page) 내부에서 웹 응용 프로그램을 호스팅하는 서블릿 컨테이너라고 하는 응용 프로그램 서버에서 만든 Java 세션 개체에는 다음이 포함됩니다. Apache Tomcat, WildFly, 웹 로직웹스피어.

예를 들어 Tomcat 웹 서버는 Tomcat 웹 서버 클러스터를 통한 세션 복제를 통해 세션 처리를 제공합니다. 세션 복제로 인해 데이터 및 메모리 오버헤드가 발생하여 속도가 느려지고 성능과 확장성이 저하될 수 있습니다.

따라서, NCache 사용자가 로드 밸런싱된 웹 팜에서 문제 없이 애플리케이션 내에 Java 세션을 저장할 수 있는 더 나은 옵션을 제공합니다.

자바 웹 세션

연결된 다른 서블릿 컨테이너 NCache

NCache 아래에서 설명하는 것처럼 웹 애플리케이션을 쉽게 호스팅할 수 있는 다양한 유형의 서블릿 컨테이너를 사용하는 옵션을 사용자에게 제공합니다.

  1. 아파치 톰캣: Java Servlet 및 Java Server 페이지의 오픈 소스 구현이며 Java 코드를 실행할 수 있는 "순수한 Java" HTTP 웹 서버 환경도 제공합니다. 고정 세션을 통해 세션 처리를 제공합니다.
  2. 와일드플라이: 다양한 환경에서 Java 응용 프로그램을 배포하고 관리하는 Java로 작성된 응용 프로그램 서버입니다.
  3. 웹 로직: Java 기반 응용 프로그램을 배포, 실행 및 배포하는 Java EE(Enterprise Edition) 호환 응용 프로그램입니다.
  4. 웹 영역: Java 응용 프로그램을 구축하고 실행하기 위한 가장 진보된 응용 프로그램 서버입니다.

다음에 대한 Java 세션 모듈 구성 NCache

Java 세션을 구성하려면 다음의 %NC_Home%/config에 있는 "session.xml" 파일을 수정해야 합니다. NCache 폴더. 다음은 이를 수행하는 코드입니다. NCache. 라이브러리 추가, 필터 정의 및 서블릿 컨테이너를 사용한 애플리케이션 배포에 대한 자세한 내용은 다음을 참조하세요. 라이브러리 추가 및 필터 정의 도움.

<?xml version="1.0" encoding="UTF-8"?>  
   <!--for single regional session provider-->
<servlet-session-config>
    <cache id="myPartitionedCache"/>
    <log log-props="log4j.properties"/>
    <locking enable-session-locking="true" retries-count="2" retry-interval="500ms" lock-timeout="36000ms" empty-session-when-locked="false"/>
</servlet-session-config>

Java 세션 모듈의 이점 NCache

NCache Java 응용 프로그램이 세션을 유지할 수 있도록 "코드 변경 없음" 옵션을 사용자에게 제공합니다. NCache 분산 캐싱. 애플리케이션이 부하 분산된 웹 서버 팜에서 실행 중이고 세션 지속성을 위해 안정적이고 확장 가능한 스토리지가 필요한 경우, NCache 다음과 같은 이점을 제공합니다.

  1. 최고의 성능: NCache 가장 빠른 응답 시간을 제공하므로 성능이 향상됩니다.
  2. 고가용성: NCache 단일 장애 지점이 없는 강력한 분산 캐시 클러스터를 제공합니다. 고가용성 애플리케이션을 중지하지 않고 캐시를 추가하거나 제거할 수 있음을 의미합니다.
  3. 최고의 신뢰성: NCache 사용자는 안정성과 성능을 손상시키지 않고 지정된 토폴로지에 따라 여러 서버에서 Java 서블릿 세션을 복제할 수 있습니다. 그렇기 때문에 어떤 이유로든 캐시 서버가 다운되더라도 사용자는 세션 데이터를 잃지 않습니다.
  4. 토폴로지를 통한 뛰어난 세션 복제: NCache 필요에 따라 세션을 유지할 수 있는 다양한 캐싱 토폴로지를 제공합니다. 예를 들어 다음을 사용할 수 있습니다. 분할 복제 토폴로지 더 많은 안정성과 확장성을 위해.
  5. 선형 확장성: NCache, 메모리 내 분산 선형 확장 가능 그리드는 세션 애플리케이션이 가능한 한 많은 확장성을 달성할 수 있는 이유인 높은 로드를 처리할 수 있는 기능이 있습니다.

Java 웹 세션에서 여러 영역 지원

지리적으로 떨어져 있는 여러 웹 팜에서 Java 서블릿 세션을 관리하려면 NCache 다음과 같은 방식으로 다중 사이트 세션 지속성을 제공합니다.

  1. Java 웹 세션 WAN 복제: NCache 사용자는 WAN을 통해 모든 Java 세션을 다른 지역(데이터 센터)으로 복제할 수 있습니다. 브리지 토폴로지 특징 NCache. 이렇게 하면 지역이 다운되더라도 Java 세션이 손실되지 않습니다.
  2. 다중 사이트 Java 웹 세션: 사용자가 주로 높은 대역폭 소비 및 가능한 성능 문제로 인해 WAN을 통해 세션을 복제하지 않으려는 경우 다음 개념을 사용하도록 선택할 수 있습니다. 다중 사이트 Java 세션 지원, 의 기능 NCache. 이 접근 방식에서 각 지역은 별도의 캐시를 구성할 수 있으며 모든 캐시에는 고유한 클라이언트 집합(Java 서블릿)이 있습니다. 세션은 사이트 간에 복제되지 않고 생성 위치에 보관됩니다.

이를 통해 두 개 이상의 활성 개별 지역을 가질 수 있으며 사용자는 대부분의 트래픽을 자체 지역으로 유지할 수 있습니다. 마찬가지로 사용자가 어떤 이유로 지역을 다운하더라도 다른 지역에서 해당 지역에 액세스할 수 있으므로 문제가 발생하지 않습니다.

고급 기능 NCache 자바 웹 세션

에 대한 Java 웹 세션 NCache Java 웹 세션에서 제공하는 모든 표준 기능을 구현합니다. 또한 다른 중요한 상황을 처리하기 위해 몇 가지 고급 기능을 구현합니다.

  1. 세션 만료: NCache 세션 만료를 처리하고 지정된 세션 시간 초과 동안 캐시에서 세션을 제거합니다. 마찬가지로 서블릿 컨테이너를 통해 세션 시간 초과 값을 지정할 수 있습니다. NCache 내부적으로 해당 간격을 사용하여 캐시에서 세션을 만료합니다.
  2. 다중 세션 요청 및 데이터 무결성 처리: 병렬 요청으로 인해 세션이 변경될 수 있는 상황을 방지하려면 NCache 두 개의 병렬 요청이 동일한 세션을 변경할 수 없도록 잠금 메커니즘을 제공합니다. 다음과 같은 방법으로 "session.xml" 파일에 지정할 수 있습니다.
    <servlet-session-config>
        <locking enable-session-locking="true" retries-count="2" retry-interval="500ms" lock-timeout="36000ms" empty-session-when-locked="false"/>
    </servlet-session-config>
  3. 세션 데이터 직렬화 처리: Java 서블릿 세션에 Java 개체를 넣고 외부 프로세스에 저장한 후 전체 Java 서블릿 세션을 직렬화해야 합니다. NCache 라는 일반 Java 직렬화에 비해 더 빠른 직렬화를 제공합니다. 컴팩트 직렬화. 이를 통해 Java 애플리케이션 속도가 크게 향상됩니다.

다음에 무엇을할지?

© 저작권 Alachisoft 2002 - . 판권 소유. NCache 는 Diyatech Corp.의 등록상표입니다.