전체 글118 JWT란(Feat. Stateless) JWT(Feat. Stateless) 세션에서 JWT로 전환한 이유 쿠키,세션 방식의 인증이 REST API의 특성인 Stateless엔 어울리지 않는다는 생각을 했다. 또한, 쿠키라는 개념이 브라우저에 종속되어있어(다른 곳에도 대체제가 있긴함) 다양한 기기와 통신할수있다는 비종속성이 최대 강점이자 목표인 REST API에도 반한다는 생각이 들었다. 따라서 Stateless한 JWT를 정리해보고자 한다. 현재 대부분의 서비스가 REST API를 사용하는 시점에서 Stateless한 방법을 사용하기 위해서는 어쩔 수 없이 지금과 같은 토큰의 방식의 인증 체계를 사용할 수 밖에 없기는 하다. 쿠키는 보안상 문제가 너무 많고, 세션은 요청을 할 때마다 필수적으로 세션 스토리지 I/O작업이 일어나야 하기때문 물.. 2022. 4. 10. 대기업과 중소의차이 보호되어 있는 글 입니다. 2022. 4. 5. [JAVA 더 깊게] 자바의 해쉬(feat. equals 재정의) 개요 프로젝트를 개발하다보면 정말 많이 쓰이는 자료구조 Map이 있다. 자바는 이 Map을 구현하는데 해쉬의 개념을 이용한다. Set의 HashSet도 있긴하다. 아무튼 이 해쉬는 삽입 삭제 조회의 효율성 세마리 토끼를 모두 잡은 자료구조로써 아주 유용하다. 이 해쉬라는게 어떤 이점이 있는지? 어떤 특성들이 있는지? 그리고 자바에서 어떻게 활용되는지 알아보자. 해쉬의 개념 해쉬는 내부적으로 배열에 데이터를 담아두는데 값 v를 해싱해서 얻은 해쉬주소를 이 배열의 index로 사용해 값 v를 저장한다. 해싱: 값 v를 해시함수를 통해 수치화하는것 해쉬 이 때문에 선형 구조 (ArrayList , LinkedList)의 단점이었던, 특정 값 v를 찾기위해서 O(N)의 복잡도를 가지며 모든 element를 순회.. 2022. 3. 23. 스레드 컨텍스트 스위칭 & 프로세스 컨텍스트 스위칭 스레드 컨텍스트 스위칭 & 프로세스 컨텍스트 스위칭 컨택스트 스위칭이란? CPU는 한 번에 하나의 스레드나 프로세스만 실행 가능하다. 때문에 하드웨어적으로 코어를 늘리는 멀티코어가 등장했다. 그래서 동시에 여러 스레드나 프로세스를 단일 CPU에서 실행하기 위해서는 서로 번갈아 가면서 실행이 돼야 하고 이때 CPU에서 실행 중이던 프로세스나 스레드에서 다른 프로세스나 스레드로 교체되는 것을 컨텍스트 스위칭이라 한다. 컨택스트 스위칭이 발생하는 경우 멀티태스킹 시스템에서는 프로세스나 스레드가 주어진 time slice(quantum)를 다 사용했을 때 발생하기도 하고, time slice는 프로세스가 cpu를 점유할수있는 시간이다. IO 작업을 하러 가야 해서 CPU를 더 이상 점유할 필요가 없거나, 다른 .. 2022. 3. 16. 이전 1 ··· 5 6 7 8 9 10 11 ··· 30 다음