기존 사내 프로젝트는 session방식으로 인증 구현을 해왔다.현재 유지보수하고 있는 프로젝트에서 추후 확장성을 이유로 session에서 JWT으로 인증 방식을 바꾸게 되었다.session과 JWT 구현 방식이 무엇이고 어떤 차이가 있는지 정리하고, 발생했던 동시성 이슈와 해결 방법에 대해 정리해보고자 한다.Session세션 방식이 인증되는 방식은 아래와 같다.클라이언트가 인증정보(email, password)를 서버에 전송서버는 메모리에 사용자를 저장하고 Session Id를 클라이언트에 쿠키로 전달 클라이언트는 쿠키에 저장된 Session Id를 사용해 요청 서버는 일치하는 Session Id를 메모리에서 검색한 후 있다면 권한 부여Session 방식의 장점Session Id를 서버에서 관리하기 때문..
Front-end/Web
브라우저 우리가 잘 사용하는 인터넷 익스플로러, 파이어폭스, 사파리, 크롬 등의 소프트웨어를 말한다. 브라우저의 주요 기능 브라우저의 주요 기능은 사용자가 선택한 자원을 서버에 요청하고 브라우저에 표시해주는 것이다. 자원은 보통 HTML 문서지만, PDF나 이미지 혹은 다른 형태일 수 있다. 브라우저는 HTML과 CSS 명세에 따라 HTML 파일을 해석해서 표시하는데, 이 명세는 웹 표준화 기구인 W3C(World Wide Web Consortium)에서 정한다. 과거에는 브라우저들이 일부만 이 명세에 따라 구현하고 독자적인 방법으로 확장함으로써 웹 제작자가 심각한 호환성을 겪었지만 최근에는 대부분의 브라우저가 표준 명세를 따른다고 한다. 브라우저의 사용자 인터페이스는 서로 닮아있는데, 다음과 같은 요소..