본문 바로가기

멋쟁이사자처럼_부트캠프/개념STUDY

(5)
OAuth2 OAuth2(Open Authorization)제3자 애플리케이션이 사용자 비밀번호를 직접 알지 않고도, 사용자의 권한을 위임받아 자원에 접근할 수 있도록 설계된 인증 및 권한 부여 프레임워크. 주로 소셜 로그인이나 API 접근 권한 관리에 사용된다.어플리케이션을 이용할 때 사용자가 해당 어플리케이션에 ID, PW등의 정보를 제공하지 않고, 신뢰할 수 있는 외부 어플리케이션(Naver, Google, Kakao, Facebook 등)이 제공하는 Open API에 ID, PW를 입력하여 해당 어플리케이션이 인증 과정을 처리해주는 방식.'2'는 버전 번호를 뜻함(2는 보안은 자체 암호화가 아니라 HTTPS에 위임함(간단 버전)) 핵심 개념 요약용어설명Resource Owner (리소스 소유자)일반적으로 사용..
JWT JWT란?JWT (JSON Web Token) 는 JSON 포맷을 이용해 정보를 안전하게 전달하기 위한 토큰 기반 인증 방식입니다. 주로 사용자의 인증 상태를 유지하거나 권한 검증을 위해 사용됩니다. JWT는 총 3개의 파트로 구성되며, . 으로 구분됩니다. (헤더(header), 페이로드(payload), 서명(signature) 세 파트)ex) xxxxx.yyyyy.zzzzz Header (헤더){ "alg": "HS256", "typ": "JWT"} Payload (페이로드){ "sub": "1234567890", "name": "John Doe", "iat": 1516239022} Signature (서명)HMACSHA256( base64UrlEncode(header) + "." + b..
기본 웹 아키텍처 개념 최신 웹 애플리케이션 아키텍처 개요https://www.storyblocks.com/ 웹사이트(영상, 오디오, 이미지 등 다양한 스톡 미디어를 제공하는 구독 기반 플랫폼)의 아키텍쳐 표현 사용자가 "숲 속의 강렬하고 아름다운 안개와 햇살"을 검색하여 Storyblocks의 이미지 상세 페이지에 접속하면 다음과 같은 일련의 과정이 빠르게 진행됩니다.(1) DNS: 사용자가 브라우저에 Storyblocks 주소를 입력하면, 가장 먼저 (1) DNS 서버에 요청하여 해당 주소의 실제 IP 주소를 찾습니다. 이는 Storyblocks 서버로 연결하기 위한 첫 번째 단계입니다.(사용자 브라우저) → (2) Load Balancer: IP 주소를 얻은 브라우저는 Storyblocks 서버로 접속을 시도합니다. 이때..
RabbitMQ란 RabbitMQ와 Kafka등장 배경RabbitMQ가 등장한 이유 (2007년)동기: 애플리케이션 간 통신을 안정적이고 유연하게 하자1. 배경:2000년대 초반, 웹 서비스 간 동기 호출(REST, SOAP 등)이 많았음서비스 간 API 호출은 느리고, 실패하면 전체 시스템이 멈춤 (tight coupling)"느려도 되니까 메시지로 보내고 비동기로 처리하자"는 니즈가 생김="중요하지 않거나, 지금 당장 처리하지 않아도 되는 일을 나중에 천천히 처리하자."2. RabbitMQ의 목적:서비스 간 메시지를 안정적으로 중계 (메시지 브로커)비동기 처리, 재시도, 메시지 우선순위 등 다양한 큐 기능 지원AMQP 프로토콜 기반으로 신뢰성과 범용성을 추구3. RabbitMQ는 이런 문제 해결에 초점:주문 완료 후 ..
CI/CD 개념 정리 CI/CD는 소프트웨어 개발에서 코드 작성(개발)부터 배포까지의 과정을 자동화해주는 방법론.CI와 CD는 각각 다른 의미지만, 실제로는 하나의 파이프라인처럼 이어져 있음. 1. CI/CD란 무엇인가?CI (지속적 통합): 코드 커밋 시 자동 테스트 & 빌드CD (지속적 배포): 빌드된 결과물을 자동으로 배포왜 필요한가? (협업 효율, 버그 감소, 속도 향상) CI: Continuous Integration (지속적 통합)"모든 개발자가 자주, 매일같이 코드를 공유 저장소에 자주 통합한다."● 핵심 개념머지(merge), 빌드, 테스트의 자동화여러 명이 개발할 때, 코드 병합(merge) 전에 자주 코드를 통합해서 충돌 가능성을 줄임자동 테스트를 돌려서, 올바른 코드인지 검증● 예시누군가 main 브랜치에..