백엔드 개발 PHP 튜토리얼 분산 시스템의 세션 처리

분산 시스템의 세션 처리

Jul 29, 2016 am 08:58 AM
addclass cookie parent session

서버 독립 세션

아래 그림과 같습니다.
서버 독립적 세션에서는 각 사용자 요청이 동일한 응용 프로그램 서버에서 작동되어야 하며, 이를 위해서는 로드 밸런싱 서버가 사용자 요청을 매번 동일한 주소의 서버로 보내야 합니다.
첫 번째 사용자가 처음 접속하는 1번 서버는 로드 밸런싱 서버에 의해 사용자 세션 내내 1번 서버로 지정되어야 합니다. 다른 서버에서는 1번 사용자의 세션 정보를 저장하지 않습니다.

요즘 로드밸런싱 서버에는 일반적으로 이 기능(nginx)이 있습니다
Session 在分布式系统中的处理

그러나 다음과 같은 상황이 발생하면
Session 在分布式系统中的处理

이때 서버 1이 다운되면 로드 밸런싱 서버는 사용자 1을 서버 2 또는 3으로 리디렉션하지만 사용자는 서버 2와 3에 안전한 컨텍스트가 없으며 서버는 사용자에게 다시 로그인하도록 알립니다. 이 사용자 경험은 분명히 영향을 받을 것입니다. 그리고 사용자 데이터 손실이 발생할 가능성이 매우 높습니다.

각 서버가 모든 세션을 유지합니다

각 서버가 모든 사용자 세션을 유지합니다. 이는 애플리케이션 서버 간의 세션 동기화 문제와 관련이 있으며 실시간 요구 사항이 상대적으로 높습니다. 이 방법을 사용하면 다음 그림과 같이 위 서버의 독립 세션에서 발생하는 문제를 피할 수 있습니다.

Session 在分布式系统中的处理

장점

이 방법은 첫 번째 방법이 발생합니다. 이 경우 1번의 세션 정보는 2번과 3번 서버에도 저장됩니다. 로드 밸런싱 서버에 장애가 발생하여 1번 사용자를 2번과 3번 서버로 리디렉션하면, 서버는 사용자 번호 1의 보안 컨텍스트도 찾습니다. 다시 로그인할 필요 없이 계속 액세스할 수 있습니다.

단점

그러나 이 방법에도 단점이 있습니다. 즉, 애플리케이션 서버의 세션 동기화에 대한 실시간 요구 사항이 상대적으로 높고 추가적인 크로스 밴드 오버헤드가 발생한다는 것입니다. 세션이 멀리 있을 때 상황이 바뀌면 동기화가 필요합니다. 세션의 정보량이 상대적으로 크면 상당한 메모리를 소비하게 됩니다.

서버 공유 세션

서버 공유 세션 정보 :

Session 在分布式系统中的处理

장점

각 사용자의 세션 정보가 저장됩니다. 애플리케이션 외부의 다른 서버(데이터베이스 또는 KV 스토리지 서비스일 수 있음)에 저장하므로 애플리케이션 서버는 각 사용자의 세션 정보를 저장할 필요가 없으므로 많은 메모리 오버헤드가 절약됩니다.

서로 다른 애플리케이션 서버가 세션 정보를 사용해야 할 경우 공유 세션 서버로 이동하여 정보를 얻습니다.

이렇게 하면 로드 밸런싱 서버가 사용자를 고정 서버에 할당할 필요가 없고, 서버 간 세션 정보를 복사할 필요도 없습니다. 세션 정보가 변경되면 애플리케이션 서버가 해당 서버로 이동하게 됩니다. 공유 서버를 수정하려면 정보가 충분합니다.

단점

공유 서버에 더 의존하거나 공유 서버 클러스터에 문제가 발생하면 사용자에게 큰 영향을 미칩니다.

쿠키로 세션 데이터를 전송합니다.

쿠키에 사용자 정보를 저장하면 불안정한 요인을 제거할 수 있지만, 쿠키에는 여전히 보안상의 위험성이 숨어 있고, 쿠키에도 길이 제한이 있습니다.

').addClass('사전 번호 매기기').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });

위 내용은 분산 시스템에서의 세션 처리에 대한 내용을 포함하여 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

쿠키는 어디에 저장되나요? 쿠키는 어디에 저장되나요? Dec 20, 2023 pm 03:07 PM

쿠키는 일반적으로 브라우저의 쿠키 폴더에 저장되며, 브라우저의 쿠키 파일은 일반적으로 바이너리 또는 SQLite 형식으로 저장됩니다. 쿠키 파일을 직접 열면 일부 왜곡되거나 읽을 수 없는 내용이 나타날 수 있으므로 사용하는 것이 가장 좋습니다. 쿠키를 보고 관리하기 위해 귀하의 브라우저에서 제공하는 쿠키 관리 인터페이스.

컴퓨터의 쿠키는 어디에 있습니까? 컴퓨터의 쿠키는 어디에 있습니까? Dec 22, 2023 pm 03:46 PM

컴퓨터의 쿠키는 사용된 브라우저 및 운영 체제에 따라 브라우저의 특정 위치에 저장됩니다. 1. Google Chrome, C:\Users\YourUsername\AppData\Local\Google\Chrome\User Data\Default\Cookies에 저장됨 등.

세션 실패를 해결하는 방법 세션 실패를 해결하는 방법 Oct 18, 2023 pm 05:19 PM

세션 실패는 일반적으로 세션 수명 만료 또는 서버 종료로 인해 발생합니다. 해결 방법은 다음과 같습니다. 1. 세션 수명을 연장합니다. 3. 쿠키를 사용합니다. 4. 세션 관리 미들웨어를 사용합니다.

PHP 세션 교차 도메인 문제에 대한 솔루션 PHP 세션 교차 도메인 문제에 대한 솔루션 Oct 12, 2023 pm 03:00 PM

PHPSession의 도메인 간 문제 해결 프런트엔드와 백엔드 분리 개발에서 도메인 간 요청이 표준이 되었습니다. 도메인 간 문제를 처리할 때 일반적으로 세션 사용 및 관리가 포함됩니다. 그러나 브라우저 원본 정책 제한으로 인해 기본적으로 도메인 간에 세션을 공유할 수 없습니다. 이 문제를 해결하려면 도메인 간 세션 공유를 달성하기 위한 몇 가지 기술과 방법을 사용해야 합니다. 1. 도메인 간 세션을 공유하기 위한 쿠키의 가장 일반적인 사용

모바일 쿠키는 어디에 있나요? 모바일 쿠키는 어디에 있나요? Dec 22, 2023 pm 03:40 PM

휴대폰의 쿠키는 모바일 장치의 브라우저 애플리케이션에 저장됩니다. 1. iOS 장치의 경우 쿠키는 Safari 브라우저의 설정 -> Safari -> 고급 -> 웹사이트 데이터에 저장됩니다. 2. Android 장치의 경우 쿠키가 저장됩니다. 설정 -> 사이트 설정 -> 크롬 브라우저의 쿠키 등에서

쿠키 작동 방식 쿠키 작동 방식 Sep 20, 2023 pm 05:57 PM

쿠키의 작동 원리에는 쿠키를 보내는 서버, 쿠키를 저장하는 브라우저, 쿠키를 처리하고 저장하는 브라우저가 포함됩니다. 자세한 소개: 1. 서버는 쿠키를 보내고, 서버는 쿠키가 포함된 HTTP 응답 헤더를 브라우저에 보냅니다. 2. 브라우저는 쿠키 등을 저장합니다.

브라우저 쿠키가 저장되는 위치에 대한 자세한 설명 브라우저 쿠키가 저장되는 위치에 대한 자세한 설명 Jan 19, 2024 am 09:15 AM

인터넷의 대중화로 인해 우리는 브라우저를 사용하여 인터넷 서핑을 하는 것이 생활 방식이 되었습니다. 브라우저를 일상적으로 사용하다 보면 온라인 쇼핑, 소셜 네트워킹, 이메일 등 계정 비밀번호를 입력해야 하는 상황에 자주 직면하게 됩니다. 이 정보는 다음에 방문할 때 다시 입력할 필요가 없도록 브라우저에 기록되어야 합니다. 이때 쿠키가 유용합니다. 쿠키란 무엇입니까? 쿠키는 서버가 사용자의 브라우저에 전송하고 로컬에 저장되는 작은 데이터 파일을 말하며 일부 웹사이트의 사용자 행동을 포함합니다.

쿠키를 지우면 영향이 있나요? 쿠키를 지우면 영향이 있나요? Sep 20, 2023 pm 06:01 PM

쿠키 삭제의 영향에는 개인화 설정 및 기본 설정 재설정, 광고 경험 영향, 로그인 상태 및 비밀번호 기억 기능 파괴 등이 포함됩니다. 자세한 소개: 1. 개인 설정 및 기본 설정을 재설정합니다. 쿠키가 삭제되면 장바구니가 비워지고 제품을 다시 추가해야 합니다. 쿠키를 삭제하면 소셜 미디어 플랫폼의 로그인 상태도 손실되므로 필요합니다. 2. 쿠키가 삭제되면 웹사이트는 당사의 관심사와 선호도를 이해할 수 없으며 관련 없는 광고 등을 표시하게 됩니다.

See all articles