
MALLOC_ARENA_MAX 옵션을 알기 위한 여정 정리.
2025. 4. 12. 03:52
Dev.
1. 들어가며최근 JDK 8에서 JDK 17로 업그레이드하는 과정에서 애플리케이션의 메모리 사용량이 급격히 증가하는 현상이 발생했고, 결국 Kubernetes의 Pod가 OOMKilled 상태로 종료되는 문제가 발생했습니다.처음에는 자바(Java) 애플리케이션에서 흔히 겪는 Heap 메모리 부족이나 GC 문제일 것으로 예상했습니다. 하지만 로그를 분석해 보니, 예상과는 다르게 JVM Heap이 아닌 외부에서 메모리 문제가 발생하고 있었습니다. 저에게는 다소 낯설고 새로운 유형의 문제였죠.이 문제를 분석하며 알게 된 중요한 환경 변수 중 하나가 바로 MALLOC_ARENA_MAX였습니다. 이 글에서는 제가 해당 옵션을 이해하기 위해 정리했던 배경지식과 개념들을 적어보려합니다. 2. Java 애플리케이션은 ..

[Redis] Redis RedLock에 대하여.
2025. 3. 3. 23:38
Dev.
0. 들어가며분산 시스템을 운영하다 보면 여러 서버가 동시에 동일한 자원(데이터베이스, 캐시, 파일 등)에 접근해야 하는 상황이 자주 발생합니다. 이때 동시성 문제를 해결하지 않으면 데이터 불일치나 충돌이 발생할 수 있습니다. 이를 방지하기 위해 우리는 락(Lock)을 사용합니다. 분산 환경에서는 Redis를 이용한 분산락을 사용할 수 있는데요. 이때 주의할 점들이 있습니다. 예를 들어, 하나의 Redis 인스턴스를 이용해 락을 관리한다고 가정해 봅시다. 만약 이 Redis 서버가 다운되면 어떻게 될까요? 현재 락이 유지되고 있는지 확인할 수 없게 되고, 여러 개의 클라이언트가 동시에 동일한 자원에 접근하거나 모두가 접근하지 못할 위험이 생깁니다. 이 문제를 해결하기 위해 Redis 기반의 Redlock..

[Dev.] SPF, DKIM, DMARC: 이메일 보안을 위한 개념 정리
2025. 3. 2. 23:57
Dev.
0. 들어가며이메일은 기업과 개인 모두에게 핵심적인 커뮤니케이션 도구입니다. 중요한 비즈니스 거래, 개인 정보, 금융 거래 등이 이메일을 통해 주고받아지며, 이 과정에서 이메일의 무결성과 신뢰성이 보장되어야 합니다. 그러나 이메일은 오랜 시간 동안 스팸, 피싱, 도메인 위변조, 스푸핑 등 다양한 보안 위협에 노출되어 왔습니다. 예를 들어, 악의적인 공격자가 실제 도메인 소유자를 가장하여 이메일을 발송하면, 수신자는 이를 진짜 이메일로 오인하여 민감한 정보를 노출할 수 있습니다. 이러한 보안 위협을 막기 위해 이메일 인증 기술인 SPF, DKIM, DMARC가 도입되었습니다. 이 글에서는 이메일 도메인 보안의 핵심 기술인 SPF, DKIM, DMARC의 기본 개념, 동작 원리, 그리고 각각의 기술이 악의적..

[Git] Merge 전략에 대하여.
2022. 12. 27. 01:04
Dev.
0. 들어가며 🏃🏻♂️ 프로젝트를 혼자서 진행할 때는 대부분 main 브랜치에서 작업하거나 간단하게 브랜치를 파서 작성한 후 별 생각 없이 merge 하는 것을 반복하곤 했습니다. 최근 경험한 협업 프로젝트에서는 각 팀원들이 feature 브랜치를 통해 기능 개발을 한 뒤 main 브랜치에 merge하는 과정을 거쳐야 했습니다. git에서는 여러 가지 merge 전략이 있으며, 전략에 따라 커밋 히스토리가 크게 달라집니다. 이에 따라 저희 팀 상황에 맞는 merge 전략이 무엇일지 알아보는 시간을 가져보았습니다. 이번 글에서는 git merge 전략에 대해 정리해보도록 하겠습니다. 1. Merge 🍎 두 브랜치를 합치는 가장 기본적인 방법으로 일반적인 Merge 명령어가 있습니다. 상황 설명을 위해 아..