2016-09-06 4 views
1

서버 기반 인증 관련 문제를 읽었습니다. 나는 다음과 같은 점에 대해 상세히 설명해야한다.서버 기반 인증의 확장 성 문제

확장 성 : 세션이 메모리에 저장되므로 확장성에 문제가 있습니다. 클라우드 제공 업체는 애플리케이션로드를 처리하기 위해 서버를 복제하기 시작하므로 세션 메모리에 중요한 정보가 있으면 확장이 제한 될 수 있습니다.

"세션 메모리에 중요한 정보가있는 것이 확장 기능을 제한하게됩니다"라고 생각하지 않습니다. 확장 기능이 제한됩니다. 정보가 복제되고 있다는 것인가? 중복성과 관련이 있습니까? 나는 그렇게 생각하지 않는다. 어쨌든, 누구든지이 점을 충분히 설명 할 수있을만큼 친절한가요? 매우 감사.

답변

0

서버 기반 인증은 세션을 사용하고 차례로 로컬 세션 ID를 사용합니다. 클라우드에서 서버가 복제되어 응용 프로그램로드를 처리하면 한 서버가 다른 서버에서 어떤 세션이 활성 상태인지 알 수 없게됩니다. 이제이 문제를 극복하기 위해 세션 ID를 데이터베이스에 유지하는 등의 추가 단계를 수행해야합니다. 그러나 서버가 점점 더 복제되면서이 모든 것을 처리하는 것이 점점 더 어려워지고 있습니다. 따라서 서버 기반 또는 세션 기반 인증은 확장성에 문제가 될 수 있습니다.

1

참조되는 것은 상태 비 저장 및 상태 유지 서버 측 작업의 차이입니다. Stateful 서버는 서버가 실제로 클라이언트에 대해 아무 것도하지 않고 클라이언트가 다시 돌아 오기를 기다리고있을 때조차도 일부 클라이언트와 관련된 상태를 유지하기 위해 점유 된 리소스 (주로 주 메모리)의 일부분을 유지합니다. 이러한 시스템의 성능 프로파일은 사용 가능한 모든 메모리가 상태로 채워지는 지점까지만 "선형"이며 서버가 기본적으로 실속 상태 인 것처럼 보입니다. Stateless 서버는 실제로 무언가를하고있을 때만 자원을 점유하고, 작업을 마친 후에는 즉시 그 자원을 해제하고 다른 클라이언트가 사용할 수 있습니다. 이러한 서버는 본질적으로 메모리 제한으로 인해 제한되지 않으므로 "쉽게 확장 할 수 있습니다".

또한이 설명은 별개의 컴퓨터 세트가 외부 세계에 실제로 존재하지 않을 때 하나의 것으로 간주하는 시나리오를 나타냅니다. (이것은 종종 기계/서버의 "클러스터"라고합니다.) 이러한 시나리오에서 클라이언트가 "큰 단일 가상 시스템"에 연결되어 있으면 실제로 클러스터의 "실제 시스템"중 하나에 연결됩니다. 그곳에 상태가 유지되면 그 같은 클라이언트에 의한 계속되는 방문은 같은 물리적 인 기계로 보내 져야합니다. 그렇지 않으면 다음 방문이 일어날 어떤 기계 에나 그 상태가 매매되어야합니다. 전자는 자신의 리소스 세트를 취하는 관리 기능 구현과 클러스터가로드를 분산해야하는 자유 (클러스터링을 원하는 이유의 반대)에 대한 제한 사항을 포함하며, 후자는 확장 성을 제한하는 추가 네트워크 트래픽을 의미합니다 근본적으로 사용 가능한 메모리와 같은 방식으로 사용됩니다.

+0

와우! 믿을 수없는 세부 사항 ... 사실, 거의 조금 너무 많습니다. 그럼에도 불구하고 고맙습니다. – Grateful