2012-06-14 3 views
0
내가 스피어 (6) 내에서 HTTP 세션과 부실 속성을 가지고있어 메모리 세션 복제에 관련이있을 수 있습니다

..오래된 세션 데이터 - 스피어

단계 :

  1. 개체 A.0 -
  2. 개체 A.1 (뉴 예) ... ID "ABC"세션에서
  3. 제거 A.0와 세션에 배치 - ID "ABC"
  4. ID와 객체를 검색 "ABC와 세션에 배치 "세션에서 - RESU LT : A.1 (수정)
  5. 서블릿 전달 또는 리디렉션 (두 기능 모두에 표시되는 문제)을 수행합니다.
  6. 세션에서 "ABC"를 검색합니다. 결과 : A.0, 제거 된 객체 세션에서 ..

노트 - 2 개의 JVM (단일 클러스터)

  • 시간에 걸쳐 메모리 복제에 사용하여 1-5 단계에 사용

    • 같은 세션 개체 (해시 코드/세션 ID) 단계들 사이의 지속 기간 2 & 5는 총 4 초입니다.
    • 중간에 다른 외부 스레드가 세션에 액세스하지 않았습니다.
    • 특정 용도로만 표시됩니다.

    누구나 오래된 데이터가 웹 스피어 애플리케이션 서버에서 반환되는 위치 전에 이런 건 본 ..
    다른 사용 사례이 발생하지 않은? 감사합니다.

  • +0

    이언 당신은 스스로를 분명히했습니다. 단계 (또는 호출 할 때 문제가 있음)를 이해할 수 없습니다. – Manglu

    +0

    WebSphere 플러그인과 함께 웹 서버를 사용하고 있습니까? 복제는 클러스터 멤버를 실제로 전환 한 경우에만 영향을 미칩니다. WebSphere Plugin을 사용하는 경우 세션이 활성화되어있는 동안에는 복제를하지 않아야합니다. 세션 설정을 사용자 정의 했습니까? 세션 관리> 사용자 정의 튜닝 매개 변수는 무엇입니까? – dbreaux

    답변

    0

    전달/리디렉션하기 전에 변경된 개체를 세션에 명시 적으로 다시 쓰고 있습니까? WebSphere의 일부 버전에서, 일부 구성에서는 변경을 "확약"하기 위해이를 수행해야합니다.

    (이에 대한 명확한 참조가있는 경우 제 답변을 업데이트 할 것입니다.)

    +0

    "명시 적으로"는 무엇을 의미합니까? 리디렉션 전에 HttpSession에서 "setAttribute"를 수행하지만 다른 작업은 수행하지 않습니다 .... – Ian

    +0

    그게 무슨 뜻입니까. 'getAttribute()'와 객체의 내용을 변경했지만'setAttribute()'를 다시하지 않으면 문제가 발생할 수 있습니다. 하지만 분명히 그것은 당신의 문제가 아닙니다. – dbreaux

    관련 문제