Ver.1 전제 사항
- 기능 완성에 중점을 둘 것(동기적 처리에 우선)
- 성능 향상에 대한 문제는 후순위로 둘 것
- Security 설정은 제외할 것
- 챌린지성 요구사항은 일단 제외할 것
Ver.1에서 구현할 기능 나열
조회 캐싱
- 메인 서버로의 GET 요청을 캐싱한다.
- 요청에 대한 결과 값이 캐싱이 되어 있다면 저장된 값을 반환
없다면 메인 서버에 요청한 결과 값을 캐싱한 후 반환
- 메인 서버로부터의 모든 요청은 상태 코드 200으로 정상 처리된다고 가정한다.
- 결과 값은 서로 다른
URL + QueryString
를 기준으로 별도로 관리된다.
- 생성(POST), 수정(PUT), 삭제(DELETE) 요청은 Main Server로 Redirect한다.
- 수정(PUT) 및 삭제(DELETE) 요청의 결과를 캐시에 반영하여 상태를 동기화한다.
관리자 권한 API
- 관리자 전용 API는
/admin
을 통해 호출할 수 있다.
METHOD |
PATH_ADMIN |
PATH_DOMAIN |
OPTIONS |
GET / DELETE |
/admin |
/{domain} |
/all |
|
|
|
QUERY_STRING |
|
|
|
?key=k1&key=k2 |
캐시 조회 및 삭제
- 전달된 별도의 키가 없다면, 도메인 Path를 포함하는 **
*모든 캐시*
**에 대한 연산을 수행한다.
- 전달된 도메인 Path를 기준으로, 또는 Key 값을 통한 캐시의 조회/삭제가 가능하다.
메타 데이터 조회 및 삭제
도메인 Path별 캐시 TTL 관리