Web (3) 썸네일형 리스트형 [Spring] 자바 웹 애플리케이션 & WAS 동작 원리 파이썬 웹 애플리케이션을 실행하기 위한 Gateway Interface 서버인 WSGI, ASGI 등에 대해 정리한 적이 있다. 이러한 Gateway Interface 서버는 파이썬으로 구현되어 있어서, Django와 같은 파이썬 웹 프레임워크로 개발된 애플리케이션을 파이썬 모듈로 import 하여 사용할 수 있다. 이는 인터페이스 서버가 동작하는 프로세스 안에서 해당 애플리케이션 코드를 직접 import하여 Python object 또는 callable 형태로 사용한다는 의미이다. 그렇다면 자바에서는 어떨까? 파이썬의 Gateway Interface 서버와 유사하게, 자바에도 Tomcat, Jetty 등의 웹 애플리케이션 서버 (WAS) 가 존재한다. 이들 서버 역시 요청을 받아 자바 애플리케이션을 .. [Web] JWT (JSON Web Token) 1. JWT (JSON Web Token) JWT 는 서로 다른 컴포넌트 간에 데이터를 전달하기 위해서 사용되는 토큰이다. JSON 형식의 객체를 암호화한 값들을 특정한 형식으로 구성한 문자열 형태를 띄고 있으며, 주로 웹서비스의 인증, 인가에서 세션과 쿠키의 대체제로 사용된다. JWT 의 JSON 객체는 name-value 쌍으로 구성되어 값을 저장한다. 토큰은 세션과는 달리 서버가 아닌 클라이언트에 저장된다. 이때문에 서버에서 메모리나 스토리지 등을 위해 세션을 관리했던 서버의 부담을 덜 수 있다. 그렇기 때문에 분산 시스템과 같이 여러 request / reply 가 발생하는 구조의 시스템에서 많이 사용한다. 2. JWT 구조 JWT 는 세가지 부분으로 구성되는데, header, payload 그리.. [Web] Rest URI 네이밍 1. What is a Resource? REST 방식에서는 주요 데이터 표현, 개념을 리소스라고 한다. REST 방식에서 얻을 수 있는 정보들, 문서나 이미지, 특정 서비스 또는 다른 리소스들의 컬렉션 등을 리소스라고 한다. 리소스는 어떤 특정한 엔티티라기보다는 엔티티들의 집합과 개념적으로 매핑되어 있다고 이해할 수 있다. 1) Singleton and Collection Resources 리소스는 singleton 이 될 수도, collection 이 될 수도 있다. 예를 들어 customer 라는 엔티티가 있을 때, customer 는 싱글 리소스, customers 는 컬렉션 리소스가 된다. customers 는 '/customers' 로 customer 에 대해서는 '/customers/{cus.. 이전 1 다음