Posts
2025
Comprehensive Guide to API Security and Anti-Bot Protection
·1038 words·5 mins
An in-depth exploration of modern API security practices, covering key exchange mechanisms for web and mobile clients, essential security headers implementation, and effective anti-bot protection strategies to safeguard your applications while maintaining excellent user experience.
Why HeapDumpOnOutOfMemoryError Should Be Avoided in Production
·702 words·4 mins
A comprehensive guide exploring why enabling HeapDumpOnOutOfMemoryError can cause significant performance issues in production environments, which OutOfMemoryError types actually trigger heap dumps, and better alternatives like JFR for memory leak detection and automatic service restart strategies.
2024
PostgreSQL vs MySQL: Finding the Right Fit for Your OLTP Workloads
·686 words·4 mins
A comprehensive comparison of PostgreSQL and MySQL for OLTP scenarios, exploring their fundamental architectural differences in secondary index handling and MVCC implementation, with practical insights on when to choose each database.
Can GraalVM Native Image Processes Be Detected by jps? Plus Our Production Strategy
·335 words·2 mins
Discover when GraalVM Native Image processes show up in jps and learn our battle-tested approach for choosing between GraalVM Native Image and JVM in production environments. We break down our strategy for Lambda-style tasks versus long-running microservices.
Maximizing Request Throughput to Third-Party APIs: A Practical Testing Approach
·892 words·5 mins
Learn how to develop and test high-performance API clients using WebClient, TestContainers, and toxicproxy. This comprehensive guide covers asynchronous request handling, isolated testing environments, and realistic failure simulation for robust microservice development.
2023
OpenJDK JVM Deep Dive: The Most Detailed JVM Memory Structure Analysis
·23344 words·110 mins
A comprehensive deep-dive into JVM memory architecture covering heap memory, metaspace, thread stacks, and compressed object pointers. This technical analysis examines memory allocation processes, Native Memory Tracking, and provides practical examples using tools like jol, jhsdb, and JFR for understanding JVM memory management internals.
2022
Tackling a Mysterious JVM Safepoint Issue: A Journey from Problem to Solution
·1004 words·5 mins
A deep dive into diagnosing and resolving a production JVM issue where applications would freeze during hourly log synchronization tasks. We explore safepoint analysis, JVM log output blocking, asynchronous logging implementation, and WebFlux optimization to achieve a complete solution.
Solving JVM Safepoint Delays: A Journey from EFS Integration to Async Logging
·970 words·5 mins
An in-depth investigation into mysterious JVM safepoint delays after upgrading to Java 17 and implementing centralized log collection with AWS EFS. We discovered how file I/O blocking during log output can freeze entire JVM processes and solved it using async logging and proper WebFlux implementation.
OpenJDK JVM Deep Dive: A Complete Guide to Java's PRNG Evolution
·4434 words·21 mins
A comprehensive exploration of pseudo-random number generators in Java, covering everything from basic Linear Congruential algorithms to advanced LXM implementations in Java 17. Learn about algorithm performance, security considerations, and how to choose the right random number generator for your specific use case.
Tackling Performance Degradation in Sharded MySQL Tables: Understanding the Root Cause and Solutions
·1712 words·9 mins
A comprehensive guide to understanding why MySQL queries slow down over time in sharded environments, exploring the underlying causes of storage fragmentation and MVCC-related issues, and providing practical solutions using table rebuilding techniques with OPTIMIZE TABLE for maintaining optimal database performance.