How to Size Java Database Connection Pools in Kubernetes
Guide to sizing Java database connection pools in Kubernetes, focusing on HikariCP configuration and best practices.
Apoorv Tyagi is a software engineer and technical writer who shares practical insights on backend systems, Kubernetes, microservices, databases, and resilient system design through in-depth engineering articles.
20 articles from this blog
Guide to sizing Java database connection pools in Kubernetes, focusing on HikariCP configuration and best practices.
A guide to Jib, an open-source tool for containerizing Java apps without Dockerfiles, enabling faster builds and optimized layers.
A case study on Kafka consumer container restarts in Kubernetes due to memory issues, partition mismatch, and ZGC struggles.
How a headless Kubernetes service enabled zero-cost cache invalidation for Node.js microservices in a distributed system.
Engineering solutions for processing multilingual names in signup APIs, addressing regex failures and data storage challenges.
Guide to integrating Dependabot with Azure DevOps to automate dependency updates using Azure Pipelines.
Debugging intermittent HTTP 502 Bad Gateway errors in a distributed system behind an API gateway.
Explains the Retry Pattern for building resilient microservices, covering transient failures, idempotency, and when to retry requests.
A guide on choosing the right database for your application, covering key factors like CAP theorem and data structure.
A guide to SOLID design principles in Java with code examples for single responsibility, open-closed, Liskov substitution, interface segregation, and dependency inversion.
Explains message queues and asynchronous processing in distributed systems, comparing synchronous vs asynchronous methods.
Tutorial on building a microservice with Spring Boot and HarperDB, then deploying it on AWS Elastic Beanstalk.
A guide to JavaScript clean code practices, covering naming, conditionals, functions, and abstraction for better readability.
An introduction to NanoID, a URL-friendly unique identifier alternative to UUIDs, covering its features, benefits, and usage.
10 JavaScript tips and best practices including numeric separators, semicolons, variable scoping, and array methods.
Five++ cool Python snippets covering lambda, Counter, dict merge, strip, zip, and sliding window techniques.
Explains why Windows prevents naming files CON, PRN, AUX, NUL, and other reserved names due to MS-DOS legacy and backward compatibility.
A guide to essential metrics for evaluating machine learning models, including confusion matrix, accuracy, precision, recall, and more.
Explains how to generate unique IDs in distributed systems using Twitter Snowflake, with a simplified Java implementation.
Explores imposter syndrome and Dunning-Kruger effect in software development, discussing their impact on developers' confidence and growth.