전체 글
[Spring] RFC 7232 - Conditional Requests로 비용 및 부하 최적화 하기
개요RFC 7232 - Conditional Requests는 브라우저가 불필요한 서버 요청을 최소화하고, 네트워크 트래픽과 서버 자원을 절약할 수 있도록 도와주는 인터넷 표준 정의 문서를 말합니다. 이 기능을 잘 사용한다면 AWS와 같은 클라우드 환경에서 비용 최적화 및 대용량 트래픽에서의 트래픽 개선도 가능합니다.기능 소개If-Modified-Since의 시간 기준으로 업데이트된 것만 조회 가능 ETag와 Last-Modified 기준으로 기존에 받았던 정책 값을 캐시 해서 사용 가능 브라우저의 캐시 자동 처리로 인해 서버에 불필요한 요청 제어일단 위의 기능들은 굳이 규약을 안 지켜도 만들 수 있으나 규약을 지켜서 만든다면 좀 더 효율적인 코드 개발이 가능해지겠습니다.바로 활용 예시를 몇개 확..
HTTP/1.1 vs HTTP/2 - 동시 요청 처리 방법에 따른 대용량 트래픽 처리
프론트엔드 개발에서는 요청을 동시적으로 처리해야 하는 경우가 빈번합니다.이때 HTTP 1.1과 HTTP 2의 처리 방식 차이를 이해하는 것이 중요합니다.참고로, Spring에서는 HTTP/2를 수동으로 활성화해야 사용 가능합니다. HTTP/2는 Server에 의존하기 때문입니다.또한 HTTP/2는 TLS 위에서 작동하기 때문에 아래와 같은 키스토어를 만들어주고 시작해야합니다.> keytool -genkeypair -alias multiflexing -keyalg RSA -keysize 2048 -storetype PKCS12 -keystore src/main/resources/keystore.p12 -validity 3650 -storepass password -dname "CN=localhost, OU..
[Spring] gRPC 사용법
깃헙에 코드가 있습니다.gRPC란?gRPC는 구글에서 만든 원격 프로시저 호출(RPC) 기술입니다.RPC는 원격 위치에 있는 서버에서 함수를 직접 실행하는 방식으로, 클라이언트가 서버의 함수를 마치 로컬 함수처럼 호출할 수 있게 해줍니다.gRPC는 저지연성을 위해 HTTP/2 위에서 동작하며, 주로 클라이언트 - 서버 간의 요청-응답을 처리하는데 사용됩니다.그러나 여기서 말하는 클라이언트-서버는 React와 Spring Boot처럼 웹 프론트엔드와 백엔드를 의미하는 것이 아니라, 마이크로서비스 아키텍처(MSA) 환경에서 분산된 시스템 간의 통신을 의미합니다.gRPC는 데이터가 바이너리 형식으로 처리되기 때문에, 사람이 읽기 어렵고 개발자가 아닌 일반 사용자와의 상호작용에는 적합하지 않습니다. 요약하자면 ..
인간 실격 - 다자이 오사무
작가의 삶다자이 오사무의 인간 실격을 읽었다.다자이 오사무는 39살이라는 짧은 나이를 살면서 자살 시도를 5번을 하고 1948년, 결국에 성공했다.살아있는 동안 모든 것이 고통과 인내의 연속이었다. 행복이라는 감정은 불투명하고 그 행복 또한 대부분은 자신과 처지가 비슷한 누군가를 보며 연민하며 생기는 행복이었던 것 같다.그것을 알 수 있는 이유는 인간 실격에 나오는 주인공은 작가의 삶을 투영한 것이기 때문이다.작가는 일본의 전쟁 패배로 인한 암흑기를 살았던 남자다.그로 인해 겪었던 생애의 지옥과 같은 삶들을 써 내려간 책이 바로 이 책이다.美의 정의인간 실격이라는 제목 그대로 사회적인 인간으로는 볼 수 없을 만큼 최악인 남자가 등장한다.아마 대부분 많은 사람들이 책의 시작부터 불쾌감을 느낄 수도 있다.사..