[{"data":1,"prerenderedAt":152},["ShallowReactive",2],{"site-header":3,"site-footer-license":37,"author-inva":41,"author-articles-inva":47},{"navigations":4},[5,20],{"collection":6,"item":7},"series",{"__typename":6,"title":8,"slug":9,"children_series":10},"Artikel","all",[11,14,17],{"title":12,"slug":13},"Algoritma dan Struktur Data","algoritma-struktur-data",{"title":15,"slug":16},"Konsep Dasar Pemrograman","konsep-dasar-pemrograman",{"title":18,"slug":19},"Kecerdasan Artifisial","kecerdasan-artifisial",{"collection":6,"item":21},{"__typename":6,"title":22,"slug":23,"children_series":24},"Tutorial","tutorial",[25,28,31,34],{"title":26,"slug":27},"Belajar Java","belajar-java",{"title":29,"slug":30},"Belajar Pascal","belajar-pascal",{"title":32,"slug":33},"Belajar Python","belajar-python",{"title":35,"slug":36},"Belajar Golang","belajar-golang",{"name":38,"url":39,"show":40},"CC BY-SA","https://creativecommons.org/licenses/by-sa/4.0/",false,{"id":42,"name":43,"slug":44,"role":45,"description":46,"profile_picture":46,"links":46},"2","Inva","inva","Writer",null,[48,66,86,102,117,133],{"id":49,"title":50,"slug":51,"excerpt":52,"published_at":53,"thumbnail_image":54,"tags":56,"reading_time":46,"series":62,"authors":63},"46","Mengapa C Mulai Ditinggalkan: Duel Filosofi Keamanan Rust vs Kesederhanaan Zig","mengapa-c-mulai-ditinggalkan-duel-filosofi-rust-vs-zig","Pernah denger kalau sekitar 70% celah keamanan kritis software modern itu asalnya dari bahasa C? Iya, bahasa yang udah jadi fondasi internet ini 😅. Yuk, kita bedah duel filosofi Rust vs Zig dan cari tahu mana yang pas buat proyek kalian!","2026-09-09T02:19:05.266Z",{"id":55},"1942a5c9-c1f6-476d-9913-768f78d9d8eb",[57,58,59,60,61],"system-programming","rust","zig","c","memory-safety",{"title":8},[64],{"authors_id":65},{"name":43,"slug":44},{"id":67,"title":68,"slug":69,"excerpt":70,"published_at":71,"thumbnail_image":72,"tags":74,"reading_time":46,"series":82,"authors":83},"45","Rate Limiting Algorithms: Token Bucket vs Leaky Bucket vs Sliding Window","rate-limiting-algorithms-token-bucket-leaky-bucket-sliding-window","Udah tahu kenapa *rate limiting* itu wajib, tapi masih bingung beda Token Bucket, Leaky Bucket, Fixed Window, dan Sliding Window? Yuk, kita adu empat algoritma ini bareng-bareng dan cari tahu mana yang paling pas buat API kalian!","2026-09-09T01:57:55.886Z",{"id":73},"0e0ed26d-20c6-443c-bde1-4a6200f6f801",[75,76,77,78,79,80,81],"backend","system-design","rate-limiting","redis","api-gateway","architecture","traffict-management",{"title":8},[84],{"authors_id":85},{"name":43,"slug":44},{"id":87,"title":88,"slug":89,"excerpt":90,"published_at":91,"thumbnail_image":92,"tags":94,"reading_time":46,"series":46,"authors":99},"44","Transactional Outbox Pattern: Solusi Konsistensi Database dan Message Broker Tanpa 2PC","transactional-outbox-pattern-konsistensi-database-message-broker","Pernah nggak kalian lihat pesanan udah masuk database, tapi email konfirmasinya nggak pernah kekirim? Itu gejala *dual-write problem*. Yuk, kita bedah Transactional Outbox Pattern biar data dan *event* kalian nggak lagi berselisih paham!","2026-09-04T12:15:23.152Z",{"id":93},"e3c617fd-1486-4b82-b937-94fbec846c77",[75,95,80,96,97,76,98],"microservices","database","message-broker","postgresql",[100],{"authors_id":101},{"name":43,"slug":44},{"id":103,"title":104,"slug":105,"excerpt":106,"published_at":107,"thumbnail_image":108,"tags":110,"reading_time":46,"series":46,"authors":114},"43","Dead Letter Queue (DLQ) & Retry Policy: Menyelamatkan Pesan Nyasar di RabbitMQ Tanpa Bikin Worker Macet","dead-letter-queue-retry-policy-rabbitmq-resilient-messaging","Pernah nggak sih, *worker* kalian nolak satu pesan terus-terusan sampai CPU melonjak 100%? Itu namanya *poison message loop*, jebakan klasik di RabbitMQ. Yuk, kita bahas cara pasang *retry policy* dan *dead letter queue* yang bener!","2026-09-03T04:16:07.481Z",{"id":109},"6c0a7ead-4841-4073-b29e-df7ae0f2aa3c",[111,97,75,80,95,112,113],"rabbitmq","async","python",[115],{"authors_id":116},{"name":43,"slug":44},{"id":118,"title":119,"slug":120,"excerpt":121,"published_at":122,"thumbnail_image":123,"tags":125,"reading_time":46,"series":46,"authors":130},"42","Health Check vs Readiness vs Liveness Probe di Kubernetes: Jangan Sampai Traffic Masuk ke Pod Mati!","health-check-readiness-liveness-probe-kubernetes","Semua pod kalian hijau Running, tapi pengguna malah disambut 502 Bad Gateway? Atau seluruh pod restart barengan gara-gara database lagi lambat? Salah kaprah soal probe bisa jadi biangnya. Yuk, kita bongkar bareng!","2026-09-02T03:15:08.836Z",{"id":124},"922ad82d-599d-4285-9540-8d1586cda4ed",[126,127,75,128,95,129,76],"kubernetes","devops","docker","reliability",[131],{"authors_id":132},{"name":43,"slug":44},{"id":134,"title":135,"slug":136,"excerpt":137,"published_at":138,"thumbnail_image":139,"tags":141,"reading_time":147,"series":148,"authors":149},"41","Log Aggregation Modern dengan Grafana Loki dan Vector: Hemat Storage Tanpa Indeks Raksasa","log-aggregation-modern-grafana-loki-vector-hemat-storage","Klaster Elasticsearch kalian rakus RAM dan boros storage, ya? Padahal nggak semua kata di log perlu diindeks, lho. Yuk, kita kenalan sama duet Grafana Loki dan Vector yang jauh lebih ramah kantong!","2026-09-01T15:45:01.066Z",{"id":140},"03c9d1a0-c80a-401d-9f2b-2b3ee7abb115",[75,142,143,144,145,146,127,76],"observa","logging","grafana","loki","vector",5,{"title":8},[150],{"authors_id":151},{"name":43,"slug":44},1791045074292]