systemd를 사용하여 Docker Compose를 Linux 서비스로 실행하기
systemd에서 부팅 시 Docker Compose를 관리합니다.
리눅스 서버에서 Docker Compose는 부팅 시 시작되고, 종료 시 깨끗하게 멈춰야 하며, 수동 개입 없이 재부팅을 견뎌야 합니다.
systemd에서 부팅 시 Docker Compose를 관리합니다.
리눅스 서버에서 Docker Compose는 부팅 시 시작되고, 종료 시 깨끗하게 멈춰야 하며, 수동 개입 없이 재부팅을 견뎌야 합니다.
Ubuntu에서 적절한 Docker 설치 경로를 선택하세요.
Ubuntu에 Docker를 설치하는 것은 간단해 보이지만, 실제로는 동일한 명령어 이름을 놓고 경쟁하는 여러 Docker 관련 옵션들이 존재합니다. 각 옵션은 패키징, 업그레이드 동작, 보안 영향 측면에서 차이가 있습니다.
추측 없이 Ubuntu APT를 해결하세요.
장기간 사용된 Ubuntu 머신에서는 APT 실패가 흔히 발생하며, 이는 주로 릴리스 업그레이드, 서드파티 리포지토리 변경, PPA 제거, 수동으로 설치된 .deb 파일 또는 중단된 패키지 설치 후에 나타납니다.
품질 저하 없이 LLM 추론 속도를 높이는 방법 - 실무 가이드
70B 모델은 한 번의 순전파(forward pass)에서 하나의 토큰을 생성하며, 각 패스마다 VRAM에서 가중치를 다시 로드하고 컨텍스트 전반에 걸쳐 어텐션을 계산하며 메모리를 동기화합니다. 토큰 사이에는 GPU가 순차적 의존성이 해결될 때까지 대기하며 유휴 상태에 머무릅니다.
멀티 에이전트 파일럿의 40%가 실패합니다. 올바른 오케스트레이션 패턴을 선택하고 실패하는 패턴을 피하는 방법을 소개합니다.
2025년은 단일 에이전트 AI 시스템이 정점에 달했던 해였습니다. 여러분은 하나의 LLM에 프롬프트, 몇 가지 도구, 그리고 목표를 부여했고, 그것은 제한된 작업에서 꽤나 잘 수행했습니다.
데이터와 함께 이벤트를 기록하세요. 절대 분리하지 마세요.
동시에 성공해야 하는 두 개의 쓰기가 결국 각각의 실패로 이어집니다.
주문 서비스는 먼저 데이터베이스에 주문을 저장한 후, 메시지 브로커로 order.created 이벤트를 발행합니다.
Go의 컨텍스트는 저장소가 아닌 제어 흐름입니다.
Go의 context.Context는 잘못 사용할 만큼 충분히 간단합니다. 그리고 바로 그것이 문제입니다.
사이드 문서가 아닌, 명세를 진실의 원천으로
스펙 주도 개발(Spec-Driven Development, SDD)은 소프트웨어 엔지니어들이 과거에 시도했다가 노력 대비 효과가 떨어지자 포기했던 아이디어들 중 하나입니다.
스펙을 진실의 원천으로, 아니면 느린 의식처럼?
2026년에 진입한 스펙 기반 개발(Spec-Driven Development, SDD)은 바이브 코딩(Vibe Coding)의 흐트러짐에 대한 진지한 개발자들의 해법으로 등장했습니다.
의도(intent)를 코드와 가깝게 유지하세요.
의결 기록은 AI 지원 소프트웨어 개발에서 누락된 기억 레이어입니다. 이는 구축된 내용뿐만 아니라 그 이유까지 포착하며, AI 도구가 코드를 작성할 때 이러한 구별이 결정적인 중요성을 갖게 됩니다.
오류를 적절한 경계에서 처리하세요.
Go의 에러 처리는 불평하기 쉽습니다. 모든 Go 개발자는 수백 번 이 코드를 작성해 보셨을 것입니다:
동시 Go 테스트에서 잠들지 마세요.
Go의 동시성 코드를 테스트하는 일은 항상 약간의 규율을 필요로 했습니다. 고루틴(Goroutine)은 가볍고, 채널(Channel)은 단순하며, 컨텍스트(Context) 취소는 관례적인(idiomatic) 방식입니다. 실제 Go 서비스에서는 백그라운드 워커와 타이머가 어디에나 존재합니다.
A2A는 사라진 것이 아닙니다. 다만 범용적으로 쓰이지 않을 뿐입니다.
구글의 에이전트 투 에이전트(Agent2Agent) 프로토콜, 즉 A2A는 첫해를 다소 혼란스럽게 보냈습니다.
AI 에이전트를 위한 신뢰할 수 있는 폴링 패턴
폴링 에이전트(Polling Agent)는 AI 어시스턴트 아키텍처에서 가장 화려하지는 않지만, 동시에 가장 유용한 구성 요소 중 하나입니다.
A2A는 에이전트를 네트워크 피어(network peers)로 전환합니다.
A2A 프로토콜(에이전트 투 에이전트 프로토콜)은 독립적인 AI 에이전트 시스템 간의 통신을 위한 개방형 표준입니다.
MCP는 에이전트에 도구를 제공합니다. A2A는 에이전트에 동료(peer)를 제공합니다.
AI 에이전트 아키텍처가 두 개의 레이어로 나뉘기 시작하고 있습니다.
시스템, 인프라, AI 엔지니어링에 관한 새 글을 받아보세요.