Home » Tag Archives: Performance (page 5)

Tag Archives: Performance

The regex that broke a server

software-development-2-logo

I’ve never thought I would see an unresponsive server due to a bad regex matcher but that’s just happened to one of our services, yielding it it unresponsive. Let’s assume we parse some external dealer car info. We are trying to find all those cars with “no air conditioning” among various available input patterns (but without matching patterns such as ...

Read More »

How to estimate memory consumption?

java-logo

This story goes back at least a decade, when I was first approached by a PHB with a question “How big servers are we going to need to buy for our production deployment”. The new and shiny system we have been building was nine months from production rollout and apparently the company had promised to deliver the whole solution, including ...

Read More »

Want to get faster with AtomicLong? Make it wait.

java-logo

I often hear that Java atomic types (java.util.concurrent.atomic) are super-fast and play nicely with highly concurrent code. Most of the time, atomics do their job in a robust and efficient manner. However, there are scenarios in which the hidden cost of unmanaged contention on atomic types becomes a serious performance issue. Let’s take a look at how  java.util.concurrent.atomic.Atomic* types are ...

Read More »

How to serialize an array of doubles with a byte (binary delta encoding for low-varianced monotonic sets of floating point data)

java-logo

Low latency systems require high performance message processing and passing. As in most cases data has to be transfered over the wire or serialised for persistence, encoding and decoding messages become a crucial part of the processing pipeline. The best results in high performance data encoding usually involve applying knowledge of application data specifics. The technique presented in this article ...

Read More »

MongoDB “Lightning Fast Aggregation” Challenged with Oracle

mongodb-logo

What does “Scale” even mean in the context of databases? When talking about scaling, people have jumped to the vendor-induced conclusion that: SQL doesn’t scale NoSQL scales It is very obvious that NoSQL vendors make such claims. It has also been interesting that many NoSQL consumers made such claims, even if they probably confused SQL in general with MySQL in ...

Read More »

Performance tuning – measure don’t guess

software-development-2-logo

In my performance tuning career I have given the advice to measure and not guess more often than I can recall. And in many cases the target of this advice has given up after looking at the monolithic 500,000 LOC legacy application they are working. In the post we are about to share some simple tools and concepts how to ...

Read More »

Throughput and latency: performance tuning made simple

software-development-logo

Many of our previous topics have measured the behaviour of certain systems in terms of either latency or throughput. As it can be confusing to understand what either of the term actually stands for, I decided to write a post explaining the terms in performance optimization standpoint. Let us start with an example to illustrate the concepts. As we are ...

Read More »

Investigating Memory Leaks Part 2 – Analysing the Problem

java-logo

The first blog in this mini-series looked at creating a very leaky sample application, so that we can investigate techniques for solving heap based problems on server applications. It demonstrates the big problem with the Producer-Consumer pattern, namely that the consumer code has to be able to remove items from the queue at least as fast, if not faster than, ...

Read More »

(Part 1 of 3): Synopsis of articles & videos on Performance tuning, JVM, GC in Java, Mechanical Sympathy, et al

java-logo

I have been contemplating for a number of months about reviewing a cache of articles and videos on topics like Performance tuning, JVM, GC in Java, Mechanical Sympathy, etc… and finally took the time to do it – may be this was the point in my intellectual progress when was I required to do such a thing! Thanks to Attila-Mihaly for giving ...

Read More »

Investigating Memory Leaks Part 1 – Writing Leaky Code

java-logo

I found this little problem the other day: there’s this server that runs for a while and then falls over. It’s then restarted by its startup script and the whole process repeats itself. This doesn’t sound that bad as it isn’t business critical although there is a significant loss of data, so I decided to take a closer look and ...

Read More »

Want to take your Java skills to the next level?

Grab our programming books for FREE!

Here are some of the eBooks you will get:

  • Spring Interview QnA
  • Multithreading & Concurrency QnA
  • JPA Minibook
  • JVM Troubleshooting Guide
  • Advanced Java
  • Java Interview QnA
  • Java Design Patterns