Tuesday, May 31, 2016

Concurrency vs. parallelism

    I like to present some examples when describing any technical aspect. That's make it easier to understand. Today I am going to describe concurrency and parallelism - the differences between them and the similarities they share.

Sunday, April 24, 2016

Database connection pool performance

Hi again after a long break! Today I would like to focus on the performance of the database connection pools in terms of database connection retrieval: Oracle Universal Connection Pool (UCP) and Tomcat Connection Pool (org.apache.tomcat:tomcat-jdbc). Let's go to the details!

Thursday, June 25, 2015

Dynamic routing in Camel

    Howdy! Long time no see. I have some time to add a pretty simplistic trick which is related to the problem I encountered with dynamic routing in Camel.

Monday, April 27, 2015

Concurrent video stream processing in Java

    Some time ago I was asked how to deal with video stream processing. The problem was quite simple. We have sequential input of video frames. Each frame must be processed, e.g. some filter must be applied. The trick is to utilize multiple cores to process these video frames. The output should contain processed video frames in correct order. I proposed one solution.

Saturday, April 11, 2015

Programmatic access to the properties loaded by PropertySourcesPlaceholderConfigurer

     Some time ago I implemented a kind of info page for exposing actual application properties. In the application there was PropertySourcesPlaceholderConfigurer involved. It has some really nice features but it hides the properties from direct access. I had to overcome that difficulty in order to iterate over them.

Thursday, February 26, 2015

Simple way to avoid ConcurrentModificationException

    Some time ago I spotted ConcurrentModificationExcepion in the logs. I decided to take a closer look at that in order to get rid of the problem.

Saturday, February 21, 2015

Ticking bomb in JDK 1.7.0_45 and blessing of soak tests

    Hello my friends! This is the first post in 2015 so it can be a little bit explosive. Actually, I have something that may be interesting for you if you like sleeping well. It sounds a little bit funny, doesn't it?

Sunday, December 28, 2014

Properties overriding in Spring

    Encapsulation can be applied not only to classes. It can also be applied to properties but in slightly different flavor. From my standpoint encapsulation and convention over configuration are two important factors which determine the robustness of the solution.

Tuesday, December 2, 2014

XPath evaluation performance tweaks

    I have recently played with XPath evaluation in Java. I must admit that default configuration of XPath processor in JDK is really broken. I was able to achieve some really significant performance gains with just a couple of simple tricks.

Monday, November 10, 2014

Destructive habits

    I have been using JUnit for quite a long time. I have recently done some coding with TestNG and I was a little bit shocked when I saw the assertion exception for the first time.