Go를 이용한 Web 애플리케이션 개발

앞서 다루었던 HTTP 챕터의 연장이다. 이번 장에서는 go 언어를 이용해서 완전히 작동하는 웹 서버를 만들 것이다. 원문에서는 중국어 flash card(단어장)를 서비스하는 예제를 제공하고 있는데, 예제로 하기에는 좀 직관적이지 않다는 생각이 들었다. 그래서 단어장 서비스 대신에, 유저 정보를 관리하는 "유저 정보 데이터 베이스" 서비스를 만들기로 했다...

golang 네트워크 프로그래밍

golang 네트워크 프로그래밍이 문서의 원문은 http문서는 원문에 대한 번역물로 몇몇 부분에서 변경이 있을 수 있다. 번역은 다음의 과정을 거친다. 초벌 번역 Copy & Paste 하는 코드는 없다. 문서의 모든 코드는 직접 만들고 테스트 한다. 번역 감수 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. HTML 1. 1...

Architecture

이번 장에서는 분산 시스템을 위한 주요 아키텍처에 대해서 다룬다. 소프트웨어적인 결과물을 만들기 위해서는 만들고자 하는 소프트웨어에 대한 아이디어를 가지고 있어야 한다. 아이디어 없는 결과물이란 있을 수 없다. 그리고 소프트웨어에 대한 아이디어를 만들기 위해서는 소프트웨어가 작동하는 환경에 대한 지식을 가지고 있어야 한다. GUI 프로그램과 batch 프로...

ARP - Address Resolution Protocol

ARP - Address Resolution Protocol주소 결정 프로토콜(Address Resolution Protocol, ARP)은 네트워크 상에서 IP 주소와 MAC 주소를 매핑하기 위해서 사용한다.ARP는 요청과 응답으로 구성된 프로토콜로 "라우팅되지 않는" 단일 네트워크에서만 작동하는 프로토콜이다. OSI7 계층의 2 계층 프로토콜로 볼 수...

네트워크 프로그래밍

네트워크 프로그래밍...

Internet socket

Internet socket컴퓨터 네트워킹에서 인터넷 소켓 혹은 네트워크 소켓은 네트워크의 종단에 놓여서 원격으로 떨어져 있는 소프트웨어가 통신할 수 있도록 하는 소프트웨어 도구를 의미한다.인터넷 소켓은 로 제어할 수 있다.소켓 API는 AT&T사에서 개발했으며, 후에 버클리 대학에서 공개된 버전의 소켓 API를 개발한다. 이 소켓을 를 포함한 모든 유닉...

입출력 모델

입출력 모델...

입출력다중화

입출력다중화유닉스에서 여러개의 파일에서 발생하는 입출력을 동시에 관리하기 위해서 사용하는 기술이다. 기본원리는 관리하고자 하는 파일의 목록을 비트테이블에 세팅하는 것으로 시작한다. 그럼 운영체제는 해당 파일에 입출력이 발생하면 각 파일에 해당하는 비트테이블에 flag를 설정하고, 이를 응용프로그램에게 알려준다. 그럼 응용 프로그램에서는 비트테이블의 fla...

berkeley socket api

berkeley socket apiberkely socket(Berkely sockets 는 BSD socket API 로도 알려져 있다. 1983년 개발된 4.2 BSD Unix(BSD socket 은 C언어를 위해서 개발되었으나 그 인터페이스가 표준으로 사용되고 있는고로 다른 언어들도 C언어의 인터페이스를 비슷하게 따르고 있다. BSD socket은 ...

endian

endian htonl(3) htons(3) ntohl(3) ntohs(3)...