[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$pC4ZxlFnru":3,"blog-list":4},"email-r4s6qz5w",[5,16,25,34,44,54,65,77],{"created_at":6,"description":7,"keywords":8,"reading_time":12,"sent_to_subscribers_at":13,"slug":14,"title":15},"2026-04-03T15:04:53.553823Z","JSON serialization in Redis is convenient but wasteful. I benchmarked four approaches for cached Go structs: plain JSON, msgp, JSON+zstd, and msgp+zstd. All compressed options hit ~90% size reduction, but the results surprised me: msgp+zstd wasn't the smallest because zstd thrives on the exact redundancy that msgp already removes. Real benchmarks, tradeoffs, and a generic cache helper inside.",[9,10,11],"golang","optimization","caching",773,"2026-04-04T08:31:18.035971Z","shrinking-redis-cache-with-msgp-and-zstd-in-golang","Shrinking Redis cache with msgp and zstd in Golang",{"created_at":17,"description":18,"keywords":19,"reading_time":21,"sent_to_subscribers_at":22,"slug":23,"title":24},"2025-06-14T19:47:01.27305Z","How can you reduce Go structs memory usage by 20-50% and boost performance for free - just by reordering your fields to minimize padding? This simple yet powerful optimization can save tens of megabytes in large-scale applications without writing a single extra line of code.",[9,10,20],"compiler",484,"2025-06-14T19:58:34.843023Z","high-performance-golang-struct-optimizations-paddings-and-alignments","Golang struct optimizations: Paddings and Alignments.",{"created_at":26,"description":27,"keywords":28,"reading_time":30,"sent_to_subscribers_at":31,"slug":32,"title":33},"2025-05-25T08:16:15.097882Z","Discuss efficient caching structures and patterns for high-speed set membership testing used in high-performance web applications, fintech, ad-tech, blockchain, and more.",[10,9,29,11],"probabilistic",674,"2025-05-25T08:25:37.772767Z","cuckoo-and-bloom-filters-probabilistic-efficient-caching","Cuckoo and Bloom filters: probabilistic efficient caching.",{"created_at":35,"description":36,"keywords":37,"reading_time":40,"sent_to_subscribers_at":41,"slug":42,"title":43},"2024-11-14T15:58:01.975744Z","AI-startups crawling the web to scrape AI-generated content from websites protected by AI-powered behavioral analysis systems and accidental paywalls over CAPTCHAs. How did we get to this point? And what next?",[38,39],"ai","security",291,"2024-11-14T18:09:05.897925Z","web-scraping-defense-and-how-ai-has-changed-it","Web Scraping Defense: How AI Has Changed it",{"created_at":45,"description":46,"keywords":47,"reading_time":50,"sent_to_subscribers_at":51,"slug":52,"title":53},"2024-05-06T07:39:58.669805Z","A guide through the whole process of profiling and benchmarking the Golang app in 5 stages. The step-by-step process of finding slow spots in your application with the help of the pprof profiling tool. Using various optimization techniques, I will show you how to increase the RPS of a simple router by 20 times.",[48,49,9,10],"profiling","pprof",1203,"2024-05-06T08:14:05.351575Z","optimization-odyssey-profiling-and-benchmarking-golang-app-with-pprof","Optimization Odyssey: pprof-ing & Benchmarking Golang App",{"created_at":55,"description":56,"keywords":57,"reading_time":61,"sent_to_subscribers_at":62,"slug":63,"title":64},"2024-04-22T16:00:33.93258Z","Discuss dependency Injection (DI) in Golang, highlighting its significance in promoting loose coupling and easier testing.  Implement DI in Go using Google's Wire tool, showcasing its simplicity and effectiveness in managing dependencies without imposing specific syntax of DI frameworks.",[9,58,59,60],"di","google","wire",397,"2024-04-22T16:10:45.581232Z","the-state-of-dependency-injections-in-golang","The State of Dependency Injections in Golang",{"created_at":66,"description":67,"keywords":68,"reading_time":73,"sent_to_subscribers_at":74,"slug":75,"title":76},"2024-03-31T08:06:52.813203Z","The challenges encountered when integrating Protobuf with Kafka in a complex project environment featuring a diverse technology stack. Insights and lessons learned from the complicated process of updating Protobuf and gRPC tools. A cautionary tale and a guide for others navigating similar legacy systems and the intricacies of using Protobuf outside of its conventional gRPC context.",[69,70,71,9,72],"kafka","grpc","protobuf","nodejs",401,"2024-03-31T09:00:00.366Z","long-term-pitfalls-of-using-protobuf-for-apache-kafka","Long-term pitfalls of using Protobuf for Apache Kafka",{"created_at":78,"description":79,"keywords":80,"reading_time":81,"sent_to_subscribers_at":82,"slug":83,"title":84},"2024-03-19T19:24:43.595806Z","The rebirth of my blog, reincarnation and a warm introduction for the new readers. Discussing how this blog initially started many years ago and what to expect from in the future.",[],77,"2024-03-19T19:49:59.366527Z","the-rebirth-of-blog-v2","BlogV2.Init()"]