Network 5

[gRPC] Status Codes

1. Status CodegRPC 호출은 마지막에 status 하나를 클라이언트에게 돌려줌보통 code, description으로 구성됨 2. 자주 쓰이는 코드코드의미생성주체재시도 관점예시OK성공서버/라이브러리재시도 불필요정상 저장CANCELLED호출 취소주로 호출자/서버 컨텍스트보통 자동 재시도 아님클라이언트 취소, 서버에서 cancel 감지DEADLINE_EXCEEDED정해진 시간 안에 응답 못 받음라이브러리에서 자주 생성상황 따라 가능3.5초 deadline 초과INVALID_ARGUMENT입력값 자체가 잘못됨애플리케이션이 직접같은 요청 재시도 의미 없음빈 content, 잘못된 roomId 형식NOT_FOUND대상 없음애플리케이션이 직접상태 바뀌기 전엔 의미 없음채팅방 없음ALREADY_EXIST..

Network 2026.04.17

[gRPC] Deadlines

1. Deadline클라이언트가 "이 시각 이후에는 더 이상 응답을 기다리지 않겠다" 라고 정하는 시간✅클라이언트는 이 시각이 넘으면 호출을 포기하고 실패로 간주함 필요성분산 시스템에서는 서버가 느려지거나 네트워크가 밀림으로 인한 지연이 발생할 수 있음⚠️ 만약 deadline이 없다면, 클라이언트가 계속 대기하게 되어 지연이 전체 시스템에 전파될 수 있음 2. ClientDEADLINE_EXCEEDED 상태deadline 초과 시, 클라이언트가 호출에 대해 받는 상태 3. ServerCANCELLED 상태서버에서 작업 중 deadline 시간을 초과할 경우, 계속 하던 작업을 자동 취소함✅ 단, 작업중인 것은 롤백하는 코드를 작성해줘야 함 4. PropagationgRPC 요청이 체이닝 형식일 경우, ..

Network 2026.04.17

[gRPC] 1. What is gRPC?

1. Introduction to gRPCGoogle의 원격 프로시저 호출 오픈소스 프로젝트서비스 메서드 계약 중심의 통신 방식 (❌ URL 중심의 REST API 방식)✅ 원격 서버 애플리케이션 메서드를 로컬 메서드처럼 호출할 수 있도록 추상화 해줌✅ 보통 HTTP/2 기반으로 동작함➡️ 다양한 언어/환경/기술스택에서 서로 통신할 수 있음 Concept Diagram서비스 인터페이스와 메시지 구조를 미리 정의함✅ 전송 효율 좋음 / 타입 명확 / 코드 생성 가능 / 다국어 환경에서 계약 기반 통신이 쉬움➡️ 분산 시스템에서 서비스 간 호출을 체계적으로 관리하기 좋음 Stub서버 메서드를 로컬 메서드처럼 보이게 해주는 클라이언트 프록시✅ 서버와 동일한 메서드를 제공함 2. Protocol BuffersG..

Network 2025.08.26

[IBM Technology] What are DNS Zones And Records?

Terry Bernstein 님의 "What are DNS Zones And Records?" 강의를 정리한 글입니다. 1. DNS ZoneDNS 네임스페이스의 일부를 관리하는 영역해당 영역에 대한 DNS 레코드들을 포함네임서버(NS) 레코드를 이용해 하위 영역(서브존)으로 위임 가능 2. DNS Record특정 도메인에 대한 정보를 담은 레코드 (Resource Record Set) 구조[name] [class] [type] [value] www IN A 9.9.9.9 항목설명예시이름(Name)도메인 이름 또는 서브도메인www, subzone, mail클래스(Class)레코드 클래스 종류보통 IN(Internet) 사용IN타입(Type)레코드 종류A, NS, CNAM..

Network 2025.03.29

[IBM Technology] What is DNS?

Pooja Devarajan님의 "What is DNS" 강의를 정리한 글입니다. 1. 소개Domain Name System도메인 이름을 ip 주소로 변환하는 시스템 2. Domain과 IP 주소의 차이점Domain vs IP구분도메인 (Domain)IP 주소 (IP Address)정의사람이 이해하기 쉬운 웹 주소네트워크에서 사용되는 숫자로 된 주소예시example.com192.168.0.1목적사용자가 쉽게 기억하고 입력할 수 있도록 함장치 간 통신을 위해 고유하게 식별형식알파벳, 숫자, .(점) 포함 가능IPv4: 숫자로 이루어진 4개 블록 (A.B.C.D)IPv6: 16진수로 이루어진 8개 블록 (ABCD:EF01:2345:6789::1)사용 방식사용자가 웹사이트에 접속할 때 입력네트워크 장치(서버,..

Network 2025.03.29