Home » Tag Archives: Performance and Scalability (page 2)

Tag Archives: Performance and Scalability

Broken Glass : Diagnosing Production Cassandra Issues

I just past my second year anniversary at Health Market Science (HMS), and we’ve been working with Cassandra for almost the entirety of my career here.   In that time, we have had remarkably few problems with it.  Like few other technologies I’ve worked with, Cassandra “just works”. But, as with *every* technology I’ve ever worked with, you eventually have ...

Read More »

Common pitfalls in benchmarking

Every once in awhile each and every one of us is trying to measure performance of certain parts of the code. It can be either a fully functional application measured against specific number of user transactions per minute or a microbenchmark. Which you have written to prove that your fellow developer is wrong. Especially in the latter case it is ...

Read More »

How expensive is a method call in Java

We have all been there. Looking at the poorly designed code while listening to the author’s explanations about how one should never sacrifice performance over design. And you just cannot convince the author to get rid of his 500-line methods because chaining method calls would destroy the performance. Well, it might have been true in 1996 or so. But since ...

Read More »

High performance libraries in Java

There is an increasing number of libraries which are described as high performance and have benchmarks to back that claim up. Here is a selection that I am aware of. Disruptor library – http://code.google.com/p/disruptor/ LMAX aims to be the fastest trading platform in the world. Clearly, in order to achieve this we needed to do something special to achieve very low-latency ...

Read More »

Using a memory mapped file for a huge matrix

Overview Matrices can be really large, sometimes larger than you can hold in one array. You can extend the maximum size by having multiple arrays however this can make your heap size really large and inefficient. An alternative is to use a wrapper over a memory mapped file. The advantage of memory mapped files is that they have very little ...

Read More »

What is NoSQL ?

NoSQL is a term used to refer to a class of database systems that differ from the traditional relational database management systems (RDBMS) in many ways. RDBMSs are accessed using SQL. Hence the term NoSQL implies not accessed by SQL. More specifically not RDBMS or more accurately not relational. Some key characteristics of NqSQL databases are : They are distributed, ...

Read More »

High Performance JPA with GlassFish and Coherence – Part 3

In this third part of my four part series I’ll explain strategy number two of using Coherence with EclipseLink and GlassFish. This is all about using Coherence as Second Level Cache (L2) with EclipseLink. General approach This approach applies Coherence data grid to JPA applications that rely on database hosted data that cannot be entirely pre-loaded into a Coherence cache. ...

Read More »

High Performance JPA with GlassFish and Coherence – Part 2

In this second part of my four part series I’ll explain strategy number one of using Coherence with EclipseLink and GlassFish.This describes the steps you have to take to configure a JPA backed Cache with Coherence and how you could use it from within GlassFish as a high performance data store. General approach You can use the Coherence API with caches ...

Read More »

High performance JPA with GlassFish and Coherence – Part 1

Have you heard about Coherence before? Probably yes. It’s one of those famous in-memory grid solutions promising awesome fast data access and unlimited space for your frequently used data. Some of it’s well know competitors are Infinispan, Memcached and Terracotta Ehcache. They are all great and the worst part with Coherence probably is, that it is NOT open source. This is the ...

Read More »