Golang 버전 업그레이드하기
Linux(Debian/Ubuntu/Fedora) 에서 Golang 버전을 업그레이드하는 방법에 대해 설명하는 글입니다.
Linux(Debian/Ubuntu/Fedora) 에서 Golang 버전을 업그레이드하는 방법에 대해 설명하는 글입니다.
elio 는 golang epoll 서버 샘플 프로젝트 입니다. elio 의미는 event loop io library 입니다. 이 라이브러리를 사용하면 쉽게 epoll-기반 서버를 작성할 수 있습니다.
Cindy Sridharan 의 2017년 글인 The method to epoll’s madness 를 의역해서 정리한 페이지입니다. epoll 은 이벤트 폴 을 나타내며 Linux 전용으로, 프로세스가 여러 파일 디스크립터를 모니터하고 I/O가 가능한 경우 알림을...
Epoll I/O 모델에 대해 소개하는 글입니다. I/O Models 고성능 서버를 위해 필요한 것 고성능 서버는 가능한 적은 부하로 연결된 클라이언트들에 서비스를 제공합니다. 즉, 단일 요청을 서버 성능 저하(latency 등)없이, 많은 동시 연결을 처리할 수 있어야 합...
Go Internals Primer를 번역한 글입니다. 이 글은 go 1.10 버전에서 작성되었습니다. Go의 런타임 및 표준 라이브러리 구현을 시작하기 전에 반드시 추상 어셈블리 언어에 대한 이해가 필요합니다. 이 가이드의 목적은 추상 어셈블리를 빠르게 ...
HASHICORP’S GO-PLUGIN EXTENSIVE TUTORIAL 을 정리한 글입니다. 에제 코드는 다음을 참고하세요. Basic 예제 gRPC를 사용한 KV 예제 go-plugin 을 처음 접하는 분들을 위해 간단히 소...
Better x86 Assembly Generation from Go를 참고하여 작성한 글입니다. 이 포스트는 Go 어셈블러 생성에 대해 소개하는 글입니다. Better x86 Assembly Generation from Go by sDimitrios Arethas...
Go 어셈블러에 대한 빠른 가이드(A Quick Guide to Go’s Assembler)를 정리한 글입니다. 이 포스트는 Go 어셈블러에 대해 소개하는 글입니다. Go Assembler Go 어셈블러에 대한 빠른 가이드 이 문서는 Go 컴파일러 gc가 사...
Scheduling In Go : Part II - Go Scheduler을 정리한 글입니다. Go 스케줄러 는 복잡한 시스템이지만, 작동하는 방식에 대한 이해가 중요합니다. 이를 통해 더 나은 엔지니어링 결정을 내릴 수 있습니다. Go 프로그램이 시작되면 호...
Scheduling In Go : Part I - OS Scheduler을 번역한 글입니다. 프로그램은 순차적으로 실행해야하는 일련의 기계어 명령(machine instruction) 입니다. 이를 실행하기 위해 OS는 쓰레드(Thread) 라는 개념을 사용합니다....
Go scheduler: Implementing language with lightweight concurrency(by Dmitry Vyukov) 영상을 참고하여 작성했습니다. Golang을 사용하여 멀티쓰레드 소프트웨어(Multi-threaded software...
Golang 을 공부할 때 도움이 될만한 사이트를 정리했습니다. Tutorial Tutorial: Get started with Go Effective Go 효과적인 Go 프로그래밍 How Discor...
Go v1.11 부터 종속성(Dependencies) 버전 정보를 쉽게 관리하기 위한 Modules가 예비 지원에 포함되었습니다. go modules 는 go mod 라는 명령어로 사용가능 하며, 다음와 같은 옵션을 제공하고 있습니다. 모듈 초기화 go mod init...
Tutorial: Get started with Go를 정리한 글입니다. 이 튜토리얼은 Go 프로그래밍에 대해 간단하게 소개하고 있습니다. 그 과정에서 다음 과정을 수행할 수 있습니다. 아직 설치하지 않았다면, Go를 설치합니다. 간단한 “Hello, world”코드...
Docker architecture를 정리한 글입니다.
Demystifying Containers - Part I: Kernel Space를 정리한 글입니다.
Containers: cgroups, Linux kernel namespaces, ufs, Docker, and intro to Kubernetes pods를 정리한 글입니다.
docker docs 의 Orientation and setup 을 정리한 글입니다.
Containerization 에 대해 소개하기 전에 준비과정으로 Kind 클러스터를 구성하는 법을 소개합니다.
Network containers(Docker Documentation) 의 내용을 정리한 글입니다.
Networking overview(Docker Documentation) 의 내용을 정리한 글입니다.
다음은 이 포스트에서 확인할 내용들입니다. 컨테이너 로그 스트림 소개 컨테이너 로그 파일의 확인 각 Json Map 로그 엔트리를 확인 중앙집중식 로깅 소개 도커 시스템 정보 다음 명령을 실행해서 Logging Driver 와 Docker Root Dir...
The Twelve-Factor App을 번역하여 정리한 글입니다. 12-요소 앱 소개 요즘 소프트웨어는 일반적으로 서비스로 제공됩니다: 이를 웹 앱이나 서비스로서의-소프트웨어(software-as-a-service)라고 합니다. 12-요소 앱은 다음과 같은 서...
이 글은 SSH 공개키를 사용하여 Git 서버에 인증하는 방법을 소개합니다.
IP 클래스와 서브넷을 소개하는 글입니다.
TCP 프로토콜을 소개하는 글입니다.
Networked Physics by Glenn Fiedler을 정리한 글입니다. Glenn Fiedler 는 Network Next 의 설립자이자 CEO입니다 . Network Next 는 프리미엄 네트워크 전송을위한 마켓 플레이스를 만들어 게임용 인터넷을 수정...
Networked Physics by Glenn Fiedler을 정리한 글입니다. Glenn Fiedler 는 Network Next 의 설립자이자 CEO입니다 . Network Next 는 프리미엄 네트워크 전송을위한 마켓 플레이스를 만들어 게임용 인터넷을 수정...
How to receive a million packets per second을 정리한 글입니다. 일상적인 대화에서 우연히 한 동료가 다음과 같이 말하는 것을 들었습니다. `리눅스 네트워크 스택은 느려요! 코어 당 초당 5 만 개 이상의 패킷을 보낼 수 없어요!” ...
CORS(Cross-Origin Resource Sharing)을 번역한 글입니다. 그림 1. CORS principle. UI 서버를 구축하고 있다고 상상해보십시오. 일부 데이터를 가져오거나 보내려면 원격 API에 연결해야 합니다. c...
Game Networking Demystified, Part I: State vs. Input을 정리한 글입니다. 이 포스트는 게임 네트워킹에 대해 소개하는 글입니다. 상태 vs 입력 네트워크 기반 멀티 플레이는 모든 플레이어를 동일한 게임 상태로 유지해야 합니...
이 글은 VSCode 원격 개발을 하는 데 도움이 되는 비법과 요령을 소개합니다.
Stateful vs Stateless Architecture: Why Stateless Won를 번역 및 정리한 글입니다. 그림. Stateless vs Stateful. Quorum: 실행을 위해 최소한의 인스턴스 수가 필요하는 것...
Learn the Bootstrap 4 Grid System in 10 Minutes 을 정리한 글입니다. Bootstrap 4 그리드 시스템. Bootstrap 4 그리드 시스템은 반응형 레이아웃(responsive layout)에 사용됩니다...
tmux 는 TTY 멀티플랙서입니다. 이 포스트은 tmux 를 소개하고 설치 및 설정 방법에 대해서 소개하는 글입니다. 그림 1. tmux. TTY는 Tele Type의 약자이고 보통 콘솔이나 터미널을 의미합니다. tmux가 screen보다 ...
Ubuntu(WSL2) 환경에서 Jekyll 을 시작하는 방법에 대해 설명하겠습니다. Jekyll은 정적 사이트 생성기(Static Site Generator)입니다. 마크 업 언어로 작성된 텍스트와 레이아웃을 사용하여 정적 웹 사이트를 만듭니다. 텍스트로 ...
이 글은 쿠버네티스의 Ingress, IngressClass, Ingress Controlller 을 소개합니다.
GitHub 를 사용하여 단순한 CI(Continuous Integration)를 구성하는 방법을 소개하는 글입니다. Prerequisite 이 문서는 다음 환경을 기반으로 작성했습니다. Windows 10 Docker Desktop + enable Kubernete...
자주 사용하는 쿠버네티스 명령을 정리하고 있습니다. Kubectl kubectl 전체 리소스 검색 $ kubectl get all Docker Registry CodeBox/Kubernetes local registry 로컬 도커 이미지 사용하기 ...
쿠버네티스 기초학습의 튜토리얼입니다. 이 가이드는 Learn Kubernetes Basics의 대화형 튜토리얼 요약한 내용입니다. 자세한 내용은 원문은 참고해주세요. 편의를 위해 애플리케이션 을 앱 이라고로 줄였습니다. 이 가이드는 Docker Desktop + WSL2...
쿠버네티스 클러스터 오케스트레이션 시스템의 기초를 소개하는 가이드입니다. 이 가이드는 Learn Kubernetes Basics를 요약한 내용입니다. 자세한 내용은 원문은 참고해주세요. 편의를 위해 애플리케이션 을 앱 이라고로 줄였습니다. 오늘날의 웹서비스에 대해...
Kubernetes comic을 정리한 글입니다. 만화를 통해 쿠버네티스에 대해 소개하겠습니다. 서비스를 제공하는 건 어렵습니다. 과거 모놀리틱(Monolithic) 앱은 상호 의존적인 부분들이 많아 배포가 어려웠습니다...
이 글은 웹훅 Fleet Autoscaler 정책을 만드는 방법을 다룹니다.
이 글은 실제 부하를 기반으로 Fleet 크기를 자동으로 관리하는 자동확장을 설명합니다.
이 글은 Agones 를 사용하여 서비스 준비가 된 GameServer Fleet(함대)을 만드는 방법을 설명합니다!
이 글은 Agones 를 사용하여 GameServer 를 빠르게 만드는 방법을 설명합니다.
이 글은 윈도우에서 Agones 를 구성하는 방법을 설명합니다.
이 글은 Agones 를 소개하고 윈도우에서 구성하는 방법을 설명합니다.
이 글은 쿠버네티스에서 Fluent Bit 과 Kafka 구성한 후 Consuming 하는 방법을 소개합니다.
이 글은 쿠버네티스에서 Fluent Bit 과 Kafka 구성하고 테스트하는 방법을 소개합니다.
이 글은 쿠버네티스에서 Fluent Bit 을 구성하고 테스트하는 방법을 소개합니다.
이 글은 Kind 에서 Ingress Controller 구성하는 방법을 소개합니다.
Docker를 사용하여 PHP 패키지 설치 없이 PHP 스크립트를 실행하는 방법에 대해 설명합니다. 테스트 환경 WSL2 Ubuntu Docker Desktop 자세한 내용은 windows 10 에 WSL2, Ubuntu, Docker 설치 by mozil...
Satis란 PHP 의존성을 로컬에서 관리하기 위한 솔루션입니다. Satis Satis 란? Composer 를 사용하여 PHP 라이브러리를 설치하면, 쉽게 패키지를 구성할 수 있지만 파일을 원격으로부터 다운로드해야 합니다. Satis 를 사용하면 프로젝트의 compo...
VSCode 와 같은 IDE에서 go-prompt 기반 프롬프트 앱은 stdin 을 디버깅 컨텍스트에서 사용하지 못하는 경우가 있습니다. 이 경우 delve 디버깅 툴의 headless 기능을 사용하여 디버깅할 수 있습니다. 먼저 VSCode 의 launch.json 파일...