-
More about Spring Cache Performance
This is a follow up to our last post about Spring’s cache abstraction. As engineers, you gain valuable experience by understanding the internals of some
Filed under: Blog Performance Programming
-
Spring Cache – Profiling
At Plumbr, we’re constantly working on how software can be made faster, and more reliable. The promise we’ve made to our customers is to avoid
Filed under: Blog Performance Programming
-
Storing and querying trillions of events
It was just a decade ago when I was wrestling with queries accessing millions of entries in the storage. Fast forward to the current time and here I am, trying to do the same but now with trillions of entries. See how we used Druid to store trillions of events in a way where we can still have fast access to the data.
Filed under: Programming
-
Processing billions of events/day
Six months ago it became painfully obvious that the system architecture suitable for processing a hundred million events per day is not going to be suitable for the challenges encountered when processing hundred billion events per day. In this post we explain how we decoupled the original monolith event processing with the help of Kafka and microservices.
Filed under: Programming
-
Why is troubleshooting so hard?
Troubleshooting issues in production systems tends to be tough and unpredictable. In this post I explain the reasons why and offer solutions to alleviate the pain.
Filed under: Monitoring Programming
-
Resizing the HashMap: dangers ahead
Abstractions are enablers of productivity. Understanding what hides behind the abstractions is what separates good engineers from mediocre ones. This post is an example where in-depth knowledge about java.util.HashMap internals allowed us to resolve a nasty concurrency issue.
Filed under: Java Programming
-
Applying TF-IDF algorithm in practice
The post is describing our experience of applying TF-IDF algorithm in practice using MapReduce. As the work carried out in this front was truly interesting, we shared the insights with our readers.
Filed under: Programming
-
How it is made: Plumbr Edition
In this post we are going to walk through the way how our automated tests, continuous building and continuous delivery help us to release fast, release often and ensure the quality of the released product.
Filed under: Programming
-
Elastic infrastructure in practice
A couple of weeks ago I got a rare opportunity to get my hands dirty in the infrastructure field. Being an interesting case where we applied elastic infrastructure using EC2, I thought to share the afterthoughts with you
Filed under: Programming
-
Why is your software aging?
The post introduces the software aging concepts with samples from actual Java applications. We cover swap space bloat, lock contention, unreleased file handles and memory leaks as samples of software aging.
Filed under: Programming