Logic in Code,
Freedom in Travel.

인생 뭐 있나 사람 사는거 다 똑같지

Computer Science

Computer Science/Network

[Network] Ubuntu DNS 네임서버의 TCP 튜닝: BIND9 적용 사례와 최적화 과정

DNS와 TCP, 그리고 성능의 병목DNS(Domain Name System)는 가볍고 빠른 UDP(User Datagram Protocol) 53번 포트를 주로 사용한다고 알려져 있다. 하지만 DNSSEC의 보급, IPv6 도입, TXT 레코드 등으로 인해 응답 패킷의 크기가 UDP의 제한인 512바이트(EDNS0 제외 시)를 초과하는 경우가 빈번해졌다. 이때 DNS는 신뢰성 있는 전송을 위해 TCP로 프로토콜을 전환(Fallback)한다.학교에서 배웠듯 TCP는 3-way Handshake를 통해 연결을 수립하고, 흐름 제어(Flow Control)와 혼잡 제어(Congestion Control)를 수행한다. 이는 데이터 무결성을 보장하지만, UDP 대비 오버헤드가 크다는 것을 의미한다. 트래픽이 몰..

2026. 1. 6. 13:18
Computer Science/Network

[Network] HTTP 1.1 vs HTTP 2.0 : 구조적 한계

웹 생태계의 복잡도가 증가함에 따라 HTTP 1.1 표준은 성능상의 한계로 HTTP 2.0 이 등장하였다. 요즘 회사에서도 (옆 팀에서) MSA 에 관한 주제로 많은 이야기를 하고 있으며 HTTP 2.0 이 언급되었다. 1. HTTP 1.1 의 한계: 직렬 처리의 병목HTTP 1.1은 기본적으로 텍스트 기반이며, 요청과 응답이 순차적으로 이루어지는 구조를 가진다. 이는 현대의 웹 환경에서 두 가지 치명적인 비효율을 야기했다.HOL Blocking (Head of Line Blocking)HTTP 1.1은 한 번에 하나의 요청만 처리 가능하다(Pipelining이 존재했으나 안정성 문제로 사장됨). 앞선 요청의 처리가 지연되면 후속 요청들이 모두 대기해야 하는 병목 현상이 발생한다.헤더의 중복 전송매 요청..

2025. 5. 13. 10:34
Computer Science

다이어그램 그리기

티스토리 편집에 아래 코드를 추가하면 mermaid 가 출력된다.예시 mermaid'''mermaidsequenceDiagram participant Client participant Server participant Middleware participant Router participant Guard participant Interceptor participant Controller participant Service Client->>Server: HTTP Request Server->>Middleware: Execute Middleware Middleware->>Router: Route Request Router->>Guard: Exec..

2024. 4. 3. 09:35
Computer Science/클라우드

[Homestead] : VBoxManage 조회 종료 삭제

$ vboxmanage list vms $ VBoxManage list runningvms $ VBoxManage controlvm poweroff $ VBoxManage unregistervm 시간 아끼는건 재설치가 최고다. sudo apt-get remove 'virtualbox*' --purge sudo rm ~/"VirtualBox VMs" -Rf sudo rm ~/.config/VirtualBox/ -Rf sudo apt install virtualbox

2024. 2. 21. 01:58
Computer Science/Server

SSH Key 으로 서버 접속하기

아래와 같이 ~/.ssh/config 경로에 ssh config 파일을 작성하여 서버에 쉽게 접속할 수 있다. Host server1 Hostname ~~~.~~~.~~~.~~~ User ubuntu Port 22 IdentityFile ~/.ssh/id_rsa_1Password Host server1 Hostname ~~~.~~~.~~~.~~~ User ubuntu Port 22 IdentityFile ~/.ssh/id_rsa_1Password Host * HostkeyAlgorithms +ssh-rsa PubkeyAcceptedAlgorithms +ssh-rsa Host * IdentityAgent "~/Library/Group\ Containers/2BUA8C4S2C.com.1password/t/a..

2024. 2. 11. 13:29
Computer Science/Server

[Linux] 리눅스 호스트네임 설정 - hostnamectl

리눅스를 설치하면 기본 호스트네임은 localhost.localdomain 가 된다. 리눅스 장비를 식별하기 위해 hostnamectl 을 통해 서버마다 호스트네임을 지정할 수 있다. 호스트네임 지정을 통해 docker-swarm 설정을 진행할 때 호스트 구분하기가 쉬워진다. 호스트네임 확인 hostnamectl 은 시스템의 호스트네임을 관리할 수 있는 명령어로 옵션없이 사용하거나 status 옵션을 주면 현재 정보를 출력한다. 터미널에 hostnamectl 을 입력하면 다음과 같은 결과를 확인할 수 있다. ubuntu@server-no1:~$ hostnamectl Static hostname: server-no1 Icon name: computer-vm Chassis: vm Machine ID: d78..

2024. 2. 10. 14:56