by Markus Breuer | Jan 30, 2025 | Database, DevOps
Why does a reliable system suddenly fail to perform? Discover how a series of overlooked details caused a performance crisis and what steps solved it. A Reliable Software, a Growing Problem Our software has proven itself over the years. Customers trusted it for...
by Markus Breuer | Jan 19, 2025 | Big Data, DevOps, Java
Solving Java Out of Memory Issues in Kafka-Powered Microservices What happens when a Kafka-driven Java microservice crashes repeatedly after hours of operation, failing to complete its tasks? In our project, we faced exactly this scenario: recurring Out of...
by Markus Breuer | Nov 5, 2024 | Big Data
Overprovisioned host systems in virtualized environments often cause performance issues. Steal Time is a reliable indicator for identifying such bottlenecks. This article explains how to monitor Steal Time using top, the impact of high values, and how monitoring tools...
by Markus Breuer | Sep 28, 2024 | DevOps, Software Architecture
Have you ever set up a virtual machine (VM) and noticed it slowing down unexpectedly? I’ve been there. I set up a VM for basic tasks; initially, everything worked perfectly. Then, performance dropped without warning. Was it my application or something deeper in...
by Markus Breuer | Sep 20, 2022 | Software Architecture
Heard about Architecture Decision Records? Anyone who moves to a new team quickly faces familiar questions. Why did colleagues solve the problem in this way? Did they not see the consequences? The other approach would have offered many advantages. Or did they see...
by Markus Breuer | Sep 4, 2022 | Software Architecture
What is event-driven architecture? What are the advantages of event-driven architecture, and when should I use it? What advantages does it offer, and what price do I pay? In the following, we will look at what constitutes an event-driven architecture and how it...
by Markus Breuer | Aug 14, 2022 | Big Data, Software Architecture
What does it mean to run an application in the cloud? What types of clouds are there, and what responsibilities can they take away from me? Or conversely, what does it mean not to go to the cloud? To clarify these questions, we first need to identify the...
by Markus Breuer | Feb 21, 2025 | Database, DevOps
Planning indexes in OpenSearch and ElasticSearch is a critical factor for performance and scalability. Poorly configured indexes can create bottlenecks and reduce system efficiency. In this guide, you’ll learn the best practices for index planning to achieve an...
by Markus Breuer | Jul 25, 2023 | Software Architecture
Introduction The principle of abstraction is a fundamental concept in software development that helps simplify complex systems by hiding unnecessary details. In this article, we will explore the significance of abstraction, its benefits, and how it impacts software...
by Markus Breuer | Jul 25, 2023 | Software Architecture
Introduction The principle of loose coupling plays a crucial role in software development by minimizing dependencies between components. This article will explore the significance of loose coupling, its benefits, and how it impacts software development. Understanding...
by Markus Breuer | Jul 25, 2023 | Software Architecture
Introduction The principle of cohesion is essential in software development, focusing on creating highly cohesive and self-contained modules or components. In this article, we will explore the significance of cohesion, its benefits, and how it influences software...
by Markus Breuer | Jul 25, 2023 | Software Architecture
Introduction The principle of separation of concerns is a fundamental concept in software architecture. It emphasizes dividing a system into distinct parts, each responsible for a specific aspect or matter. This approach promotes modularity, maintainability, and...
Recent Comments