How I Am Setting Up VMs On Hetzner Cloud
Table of Contents Creating Instances Configuring SSH Provisioning Software Try It Out Yourself Whenever I’ve need a Linux box for some testing or expe
Morling.dev is the personal blog of Michael Morling, a software engineer and architect with deep expertise in Java, Spring, JVM internals, architecture, performance, and developer tooling. His writing focuses on practical and detailed explanations of topics such as Spring framework internals, microservices design, JVM garbage collection, performance tuning, clean architecture, Gradle builds, and language features that matter in real projects. Michael often breaks down subtle behaviors of the JVM and Spring ecosystem, helping developers understand why things work the way they do and how to improve reliability and efficiency in production systems.
82 articles from this blog
Table of Contents Creating Instances Configuring SSH Provisioning Software Try It Out Yourself Whenever I’ve need a Linux box for some testing or expe
Explains how to implement distributed leader election using Amazon S3's new conditional write feature for creating a lock file.
A technical guide on using jq and shell scripting to extract multiple values from Terraform JSON output for database connection.
Explores implementing a zip() operation for Java streams using the new Stream Gatherers preview API in Java 22.
Explains how to automatically maintain 'updated_at' timestamps in PostgreSQL using DEFAULT values, offering a simpler alternative to triggers.
Using tee and process substitution to filter Java process output for Kubernetes logging and error detection.
A Java programming challenge to process one billion rows of temperature data, focusing on performance optimization and modern Java features.
Explains how to use JDK Flight Recorder's new native memory tracking events to monitor off-heap memory usage in Java applications.
Explores whether Debezium can lose database change events, explaining its at-least-once semantics and operational pitfalls like log retention.
Explores seven practical use cases for Change Data Capture (CDC) in data engineering, including analytics, caches, and microservices.
A guide to detecting and diagnosing Java thread leaks using JDK Flight Recorder events and SQL-based analysis with JFR Analytics.
An opinionated guide for beginners starting Java development in 2023, covering setup, tools, and ecosystem recommendations.
A guide to automatically change terminal colors based on your active AWS profile to prevent accidental commands in production.
Analyzing Java BlockingQueue performance issues using JDK Flight Recorder and custom events to detect blocked producer threads.
A developer details issues building Apache Flink with modern Maven due to blocked HTTP repositories in dependencies, offering troubleshooting insights.
Explores using Postgres 15's new logical decoding row filters with Debezium for efficient, server-side change data capture filtering.
Investigates unexpected WAL growth in an idle Postgres database due to an inactive replication slot, with analysis and solution.
A guide to deploying a Quarkus native application built with GraalVM on the Render cloud platform, including configuration and CI/CD setup.
A software engineer explains their decision to join Decodable, a startup building a serverless real-time data platform, focusing on stream processing.
Explores challenges of running Kafka Connect on Kubernetes and proposes a vision for a more Kubernetes-native architecture.