2016-10-29 3 views
0

세 개의 노드에서 웹 응용 프로그램을 실행할 수 있습니다. 로드 밸런서가 있다고 가정 해 봅시다. 부하가 분산 된 시스템은 어떻게 세션을 처리합니까?로드 균형 조정 및 인증

사용자가 인증 할 때 하나의 요청을 만들고 그 요청이 노드 1에서 처리되고 다음 요청이 노드 2에서 처리됩니다. 시간 델타는 매우 작을 수 있습니다.

모든 노드의 세션 저장소가 매우 빠르게 동기화되고 있습니까? 아니면 다른 접근 방식이 있습니까?

+0

이것이 바로 국적이없는 서비스가 선호되는 이유입니다. 세션을 제거하십시오;) – plalx

+1

@plalx 그러나 statles 서비스가 인증 문제를 처리하는 방법은 무엇입니까? 토큰을 사용하더라도 우리는이를 저장하고 공유해야합니다. 또는 나는 무엇인가 놓치고 있냐? – Paul

답변

1

세션은 공유 세션 db를 사용하여 여러 인스턴스에서 공유 할 수 있습니다. Redis 캐시는 이러한 목적을위한 한 가지 예입니다.

세션 저장소를 모든 노드에 동기화하는 것도 접근 방식입니다. 그러나이를 위해서는 빠른 복제가 필요하며 확장이 어렵습니다. 장애 조치는 보장 할 수 없습니다.

인증은 중앙 서버에서 처리해야합니다. 임의의 수의 요청 서비스 노드가이를 사용할 수 있습니다.

관련 문제