<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
    <channel>
        <title>뚝딱코딩</title>
        <link>https://www.ttukttak-coding.dev</link>
        <description>뚝딱뚝딱 만들어가는 개발 블로그</description>
        <lastBuildDate>Tue, 07 Apr 2026 00:00:00 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>ko</language>
        <copyright>© 2026 뚝딱코딩</copyright>
        <item>
            <title><![CDATA[인덱스가 안 타는 이유 — 만들어도 느린 쿼리의 공통 원인]]></title>
            <link>https://www.ttukttak-coding.dev/posts/10-why-indexes-are-not-used</link>
            <guid isPermaLink="false">https://www.ttukttak-coding.dev/posts/10-why-indexes-are-not-used</guid>
            <pubDate>Tue, 07 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[인덱스가 있는데도 풀 스캔이 나오는 이유를 함수 가공, 암묵적 형변환, 복합 인덱스 순서, 선택도 관점에서 정리합니다.]]></description>
        </item>
        <item>
            <title><![CDATA[MVCC 완전 정복 — Undo 로그부터 스냅샷 읽기까지]]></title>
            <link>https://www.ttukttak-coding.dev/posts/09-mvcc-fundamentals</link>
            <guid isPermaLink="false">https://www.ttukttak-coding.dev/posts/09-mvcc-fundamentals</guid>
            <pubDate>Tue, 07 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[MVCC가 왜 필요한지, Undo 로그와 스냅샷 읽기가 어떻게 동작하는지, InnoDB와 PostgreSQL 차이까지 정리합니다.]]></description>
        </item>
        <item>
            <title><![CDATA[데이터베이스 락 완전 정복 — 공유 락부터 데드락까지]]></title>
            <link>https://www.ttukttak-coding.dev/posts/08-database-lock-fundamentals</link>
            <guid isPermaLink="false">https://www.ttukttak-coding.dev/posts/08-database-lock-fundamentals</guid>
            <pubDate>Tue, 07 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[데이터베이스 락의 종류와 동작 원리, 낙관적·비관적 락 전략, 데드락 원인과 대처법을 예제와 함께 정리합니다.]]></description>
        </item>
        <item>
            <title><![CDATA[트랜잭션 격리 수준 완전 정복 — Read Uncommitted부터 Serializable까지]]></title>
            <link>https://www.ttukttak-coding.dev/posts/07-transaction-isolation-levels</link>
            <guid isPermaLink="false">https://www.ttukttak-coding.dev/posts/07-transaction-isolation-levels</guid>
            <pubDate>Mon, 06 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[트랜잭션 격리 수준이 왜 필요한지, 각 레벨에서 어떤 이상 현상이 발생하는지 예제와 함께 정리합니다.]]></description>
        </item>
        <item>
            <title><![CDATA[인덱스 완전 정복 — B+Tree 구조부터 실행 계획 읽기까지]]></title>
            <link>https://www.ttukttak-coding.dev/posts/06-index-tuning-fundamentals</link>
            <guid isPermaLink="false">https://www.ttukttak-coding.dev/posts/06-index-tuning-fundamentals</guid>
            <pubDate>Mon, 06 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[인덱스가 왜 빠른지, 복합 인덱스 컬럼 순서가 왜 중요한지, EXPLAIN은 어떻게 읽는지 예제와 함께 정리합니다.]]></description>
        </item>
        <item>
            <title><![CDATA[데이터베이스 정규화 완전 정복 — 1NF부터 BCNF까지]]></title>
            <link>https://www.ttukttak-coding.dev/posts/05-database-normalization-rules</link>
            <guid isPermaLink="false">https://www.ttukttak-coding.dev/posts/05-database-normalization-rules</guid>
            <pubDate>Mon, 06 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[정규화가 왜 필요한지, 각 단계가 어떤 이상 현상을 해결하는지 예제 테이블과 함께 정리합니다.]]></description>
        </item>
        <item>
            <title><![CDATA[Discovery 모듈 성능 개선기 — Protobuf 제거, 캐시 도입, 검색 정확도 향상]]></title>
            <link>https://www.ttukttak-coding.dev/posts/04-discovery-cache-and-protobuf-removal</link>
            <guid isPermaLink="false">https://www.ttukttak-coding.dev/posts/04-discovery-cache-and-protobuf-removal</guid>
            <pubDate>Mon, 06 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[`Service` 계층에 침투한 Protobuf, 상품 목록 N+1, 매 요청마다 DB 조회, 공백 검색 불일치를 해결한 과정을 정리합니다.]]></description>
        </item>
        <item>
            <title><![CDATA[채팅 모듈 조회 성능 개선기 — 배치 페칭과 레이어 정리]]></title>
            <link>https://www.ttukttak-coding.dev/posts/03-chatting-query-optimization</link>
            <guid isPermaLink="false">https://www.ttukttak-coding.dev/posts/03-chatting-query-optimization</guid>
            <pubDate>Mon, 06 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[`innerJoin`으로 인한 누락, 불필요한 Redis 캐싱, 중복 모델 문제를 쿼리 최적화와 레이어 정리로 해결한 과정을 공유합니다.]]></description>
        </item>
        <item>
            <title><![CDATA[N+1 쿼리와 캐시 미스 — 커뮤니티 모듈 성능 개선기]]></title>
            <link>https://www.ttukttak-coding.dev/posts/02-n-plus-1-and-cache-key-strategy</link>
            <guid isPermaLink="false">https://www.ttukttak-coding.dev/posts/02-n-plus-1-and-cache-key-strategy</guid>
            <pubDate>Mon, 06 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[리뷰 목록 40번 쿼리, 해시태그 N+1, 캐시 적중률 0%에 가까운 등급 뱃지 — 세 가지 성능 문제를 해결한 과정을 공유합니다.]]></description>
        </item>
        <item>
            <title><![CDATA[Kotlin에서 Redis 캐시가 깨지는 이유 — Jackson DefaultTyping의 함정]]></title>
            <link>https://www.ttukttak-coding.dev/posts/01-redis-cache-serialization-issue</link>
            <guid isPermaLink="false">https://www.ttukttak-coding.dev/posts/01-redis-cache-serialization-issue</guid>
            <pubDate>Mon, 06 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[LinkedHashMap 역직렬화 문제와 START_OBJECT vs START_ARRAY 에러를 Jackson DefaultTyping 관점에서 정리합니다.]]></description>
        </item>
    </channel>
</rss>