모든 블로그
데보션

데보션

주요 카테고리 AI · DevOps · 백엔드

활동 요약

대표 인기 포스트나의 새로운 주니어 개발자는 AI? LLM을 활용한 코드 리뷰 자동화744 조회
최근 30일
2개
평균 조회
77
누적 조회
37,237
전체 글
486개
마지막 발행
2026. 11. 10.
블로그 방문

데보션 기술 블로그 글 (63)

백엔드

Go 테스트 자동화: Unit 테스트부터 Integration 테스트까지 - 코드 안정성, 이젠 완벽하게 검증한다!

Go의 표준 테스트 도구부터 Mocking, Integration Test, CI 자동화까지 한 흐름으로 정리했습니다. 테스트를 빠르고 자주 돌릴 수 있게 구조화해 코드 안정성을 높이는 방법을 설명했습니다.

#Go#test#GitHub Actions
7700

백엔드

Apache Airflow DAG Versioning 기능 알아보기

Airflow 3.0의 DAG Versioning 기능과 DAG Bundle 구조를 소개했습니다. GitDagBundle을 통해 과거 버전의 DAG를 안정적으로 실행하는 방법을 설명했습니다.

#Airflow
9400

백엔드

Raft 알고리즘을 이용해 고가용 프로그램을 만들어보자!!

Raft와 sofa-jraft로 3노드 고가용 우선순위 큐를 구현한 사례를 소개했습니다. 리더 선출과 로그 복제로 장애 상황에서도 일관성을 유지하는 흐름을 설명했습니다.

#Raft#sofa-jraft#Java
9300

백엔드

Python 통합 코드 품질 도구 Ruff : Flake8, isort, Black의 대안

Ruff는 Flake8, isort, Black을 통합한 초고속 Python 코드 품질 도구를 소개했습니다. pre-commit과 단계적 마이그레이션으로 대규모 프로젝트에도 적용하는 방법을 다뤘습니다.

#Python#Rust#pre-commit
8200

백엔드

Kotlin과 JPA의 한계 극복: 빌링 시스템 고도화 과정

Kotlin과 JPA의 한계를 빌링 시스템 고도화 과정에서 정리하고 jOOQ와 JDBC로 전환한 사례를 소개했습니다. 복잡한 쿼리 표현력, 불변 객체 설계, 운영 안정성을 함께 개선했습니다.

#Kotlin#Spring Boot#JPA
25800

백엔드

내가 JUnit5에 병렬화를 도입한 이야기 - 메서드 단위

JUnit5 Vintage 엔진에 메서드 단위 병렬화를 도입한 과정을 다뤘습니다. 고정 크기 스레드 풀에서 발생한 교착 상태를 ForkJoinPool로 해결했습니다.

#JUnit5#Redis#동시성
12800

백엔드

OpenStack VM 전원 동기화 로직 분석

OpenStack Nova가 libvirt lifecycle 이벤트를 받아 VM 전원 상태를 비동기적으로 감지하고 DB와 동기화하는 흐름을 설명했습니다. 이벤트 매핑, 큐 전달, 지연 처리, ComputeManager의 상태 비교까지 정리했습니다.

#OpenStack#Nova#libvirt
8000

백엔드

A. Auto 서비스를 위한 gRPC 기술 도입 이야기

차량 내 에이닷 서비스를 위해 OEM과 플랫폼 사이에 Auto Proxy 서버를 구축하고 gRPC를 도입했습니다. 양방향 스트리밍과 Protocol Buffers로 실시간 데이터 전송 효율을 높였습니다.

#gRPC#Protocol Buffers#Spring Boot
9400

백엔드

Python Poetry 대신 UV를 써보면서 느낀 점들

Poetry와 UV를 실제로 비교하며 속도와 사용성을 점검했습니다. UV는 더 간결했지만 극적인 차이는 아니어서 신규 프로젝트부터 시험 도입하는 접근이 적합했습니다.

#Python#Poetry#uv
10400

백엔드

PIP를 대체하는 UV 사용법 가이드

UV를 PIP 대체 도구로 소개하며 설치와 기본 사용법, 주요 명령어를 정리했습니다. 가상환경 자동화와 빠른 성능, 의존성 및 Python 버전 관리 기능을 함께 설명했습니다.

#Python#uv#FastAPI
8400

백엔드

OpenShift에서의 Security Context Constraints(SCC) 이해하기

OpenShift의 SCC를 클러스터 보안 정책 관점에서 정리했습니다. 파드 생성 흐름, RBAC 연계, Kubernetes의 대체 메커니즘까지 함께 비교했습니다.

#OpenShift#Kubernetes#Security Context Constraints
4600

백엔드

빠른 북극곰(Polars), 느린 판다(Pandas). Python Polars라이브러리

Polars는 Pandas와 비슷한 인터페이스를 유지하면서도 Rust 기반 최적화로 대용량 데이터 처리 성능을 높였습니다. Lazy Execution과 멀티코어 활용으로 로컬 환경에서도 빠른 전처리와 분석을 기대할 수 있습니다.

#Python#Polars#Pandas
12400

백엔드

Apache Airflow를 시작하는 가장 쉬운 방법, Astro CLI

Apache Airflow의 설치와 실행이 어렵다는 문제를 Astro CLI로 쉽게 줄이는 방법을 소개했습니다. 단 몇 개의 명령어와 템플릿, 테스트 도구로 로컬 개발 환경을 빠르게 구성할 수 있었습니다.

#Airflow#Python
11900

백엔드

Redis와 클라이언트 캐시 간 데이터 동기화 기술 - Redis Client Caching 살펴보기

Redis 클라이언트 캐시의 최신성 문제를 해결하기 위한 Client Caching 동작 방식을 설명했습니다. Invalidation 메시지로 로컬 캐시를 동기화하는 예제와 적용 흐름도 함께 다뤘습니다.

#Redis#cache#Python
23200

백엔드

Foundry 이더리움 스마트 컨트랙트 개발툴 소개

Foundry로 이더리움 스마트 컨트랙트 개발 흐름을 설치부터 배포, 호출까지 소개했습니다. ERC20 예제로 forge와 cast의 기본 사용법과 라이브러리 설정 방법을 정리했습니다.

#Foundry#이더리움#스마트 컨트랙트
4000

백엔드

HTML 문서의 실시간 본문 추출기: 노이즈 적은 콘텐츠 수집의 비밀

HTML 문서에서 실시간으로 본문만 빠르게 추출하기 위한 PAAS의 로직을 소개했습니다. 트리 구조 feature와 entropy를 활용해 노이즈를 줄이면서 핵심 정보 유실을 막았습니다.

#HTML#LLM#검색
4000

백엔드

FastAPI에서의 의존성 주입: 유연하고 확장 가능한 서비스 구조 만들기

FastAPI의 Depends()로 의존성 주입을 적용하는 방법을 설명했습니다. 비즈니스 로직과 구현체를 분리해 유연성과 테스트 용이성을 높이는 구조를 소개했습니다.

#FastAPI#Python#REST API
7100

백엔드

JUnit5에 병렬화를 도입한 이야기 - 클래스 단위

JUnit5 Vintage 엔진에 클래스 단위 병렬 실행을 도입한 과정을 설명했습니다. ForkJoinPool 대신 fixed thread pool과 CompletableFuture를 사용해 5.12 버전에 반영했습니다.

#JUnit5#병렬화#비동기
4800