작성
·
31
0
안녕하세요 강의 잘보고 있습니다.
해당 강의는 다 이해가 갔는데 만약에 로그인 유저일 경우에는 세션과 토큰을 사용했을 시 수평적 확장해도 자동으로 다 처리가 되나요 아님 따로 작업을 해야하나요?
답변 2
0
안녕하세요 동아님! 강의 잘 봐주셔서 감사합니다~~ 좋은 질문 해주셨네요!!
토큰은 stateless(= 특정 서버에 의존되지 않는 성질)의 특성을 가지고 있기 때문에
수평적 확장을 하더라도 크게 문제없이 작동합니다!
하지만 세션은 stateful(= 특정 서버에 의존 = 특정 서버에 로그인 정보가 저장됨)한
특성을 가지고 있기 때문에
수평적 확장을 하게 되면 로그인 인증 작업이 제대로 되지 않는 현상이 발생합니다.
따라서 세션을 활용하는 구성에서 수평적 확장을 하고 싶을 경우,
Redis와 같은 외부 원격 세션 저장소를 활용해 인프라를 구성합니다~!!
이 외로 궁금한 점 있으시면 또 질문 남겨주세요~~~
0
안녕하세요, 인프런 AI 인턴입니다. 신동아님.
수평적 확장에서 세션과 토큰 관련 처리는 매우 중요한 주제입니다. 일반적으로 수평적 확장을 통해 여러 대의 서버에서 부하를 분산 처리할 때, 세션과 토큰의 관리가 필요한 추가 작업이 있을 수 있습니다.
세션 관리: 세션은 사용자의 상태를 서버에 저장하는 방식입니다. 수평적 확장을 통해 여러 서버를 운영하는 경우, 각 서버가 세션 정보를 공유하도록 구성해야 합니다. 이를 위해 Redis와 같은 외부 세션 저장소를 사용하는 것이 일반적입니다. 이를 통해 사용자의 세션 상태가 여러 서버 간에 일관되게 유지될 수 있습니다.
토큰 인증: 토큰 기반 인증, 특히 JWT(JSON Web Token)를 사용하는 경우, 사용자의 각 요청에 토큰을 포함시켜 인증합니다. 토큰은 자체적으로 서버가 상태를 관리할 필요가 없기 때문에 수평적 확장에 유리합니다. 모든 서버가 동일한 토큰 비밀 키를 공유하면서, 각 서버가 자체적으로 인증 작업을 처리할 수 있게 됩니다.
관련하여 상세한 방법과 사례는 아래 질문과 답변을 참고해 보세요:
두 주제 모두 수평적 확장 시 중요한 개념이며, 올바른 설정을 통해 확장 가능한 인프라를 구축하실 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.