CS

CS/Network

gRPC란 무엇인가? REST API와의 차이점 및 장단점 정리

gRPC란구글에서 만든 RPC(Remote Procedure Call) 프레임워크이다.HTTP/2 기반Protocol Buffers를 IDL(Interface Definition Language) 사용 → 통신 최적화JSON 대신 Binary Serialization 사용 → 통신 최적화함수 호출하듯이 원격 서비스 메서드 호출 가능다른 컴퓨터에 있는 어떤 기능을 자기 기능인 것처럼 실행할 수 있게 해주는 프로토콜이다. 👉 “REST처럼 URL + JSON으로 통신하는 게 아니라,. proto 파일로 규약(Contract)을 정의하고, 클라이언트가 메서드를 호출하여 통신한다. gRPC 장점고성능protocol buffer를 통해 메시지 크기를 줄일 수 있다. (key 값 항상 보내지 않음)HTTP/2 ..

CS/Network

DNS 서버 원리와 레코드 타입(A, AAAA, NS, CNAME) 이해하기

DNS(Domain Name System)란호스트의 도메인 네임을 네트워크 주소로 변환하거나, 그 반대의 역할을 수행하는 서버www.host.com ↔ 192.168.10.0 도메인 주소를 브라우저에 입력도메인 주소들을 가지고 있는 DNS 서버에 접속DNS 서버에 접속한 도메인과 연결된 IP 정보를 조회(확인)해당 IP를 사용자에게 반환사용자 PC는 전달받은 서버의 IP 주소로 접속서버의 IP로 연결된 브라우저에 서버의 내용을 출력 DNS 작동 원리전 세계에 도메인 수가 너무 많기 때문에 DNS 서버 종류를 계층화해서 단계적으로 처리합니다.브라우저에서 도메인 주소를 입력하면, 먼저 PC에 저장된 Local DNS에게 IP 정보를 요청합니다.Local DNS에 “www.naver.com”의 IP 주소가 있..

CS/Network

MQTT 프로토콜이란? IoT 통신을 위한 네트워크 구조 이해하기

MQTTMessage Queuing Telemetry Transport 약자로, 경량의 pub/sub 메시징 프로토콜입니다.M2M(machine-to-machine)와 IoT(Internet of Things) 시스템에서 사용하기 위해 만들어졌습니다.➡️ IoT를 위해 낮은 전력과 대역폭 환경에서도 사용할 수 있게 설계되어 있습니다. MQTT 구성 요소Publisher메시지를 Broker에 발행하는 역할BrokerPublisher로부터 모든 메시지를 수신하고 필터링하며, 구독한 사용자들에게 메시지를 전송하는 역할SubscriberBroker로부터 메시지를 구독(처리)하는 역할 메시지 관련MessageMQTT 프로토콜을 통해 전달되는 메시지Topic메시지의 라벨 역할Payload메시지의 실제 내용 MQTT..

CS

Go 언어란? go 사용하는 이유: Goroutine, GC

Go란 무엇인가간략화된 컴파일 언어Compile 시간이 매우 짧은 언어개발 환경 세팅, 라이브러리 추가 없이 빠르게 실행 가능동시성 처리 간편 (동시에 코드 여러 줄 실행 가능)go 키워드만 붙이면 됨Goroutine 지원경량 스레드를 통해 효율적인 병렬 처리 가능goroutine을 사용하면 Runtime이 자동으로 여러 CPU 코어에 작업을 분산하여 실행 가능 Go를 사용하는 이유웹 서버 제작 간편HTTP Package + SQL Package + JSON Package 가 매우 잘 되어 있음Multi Core 컴퓨팅 환경 개발 가능빠른 실행 환경 (+ 개발하기 쉬움)GC 지원 (메모리 관리 용이) C/C++ 단점- 개발 속도는 느리지만, 실행 속도는 빠름Python 단점- 개발 속도는 빠르지만, 실행..

kylo
'CS' 카테고리의 글 목록