Making Sense of Blockchain

I got a call from my friend, a few Sundays back, and he started asking me about bitcoin and mining. Though I had a vague notion of bitcoins and the technology behind it, I wasn’t familiar with all the terms. As you’ve probably guessed, I wasn’t able to carry out any meaningful discussion on the bitcoin topic. This post is my first attempt at making sense of blockchain, the technology at the heart of digital currency.

(more…)

Advertisements

A Class of Its Own

Anyone using Java is familiar with the concept of Java class file. It’s the artifact generated from a Java source file after a successful compilation. A class file contains bytecode (instructions) that is interpreted by a Java Virtual Machine (JVM) during execution. As shown in Figure 1, the bytecodes in a class file follows a strict format described in the JVM specification.

(more…)

Memories of a Java Runtime

It’s been a while since I wrote anything about Java Virtual Machine (JVM). I have been using Java for quite some time, yet my understanding of the inner workings of JVM seems to fade if I don’t refresh it once in a while. This posting is an attempt to renew my memories while trying to add something new. I plan to post a series of articles exploring different aspects of JVM.

(more…)

Anatomy of a Bug – Part I

Recently, I came across a production issue where a Zuul (Spring Cloud Brixton.SR3) edge service became unresponsive to HTTP requests. Even the health REST endpoint, which provides basic health information, of the affected service failed to respond. The Eureka registry service also advertised the unresponsive service as up. It was a Spring Boot (1.3.4.RELEASE) application with an embedded Jetty (9.3.0.v20150612 ) web container running on Red Hat Linux VM with Oracle JVM (1.8.0_31).

(more…)

Revisting Swagger

Lately, I am getting a few 'how to do' inquiries on my last Swagger posting. Most questions involve either renaming or sorting REST controllers. I also ran into a few interesting Swagger challenges in the last couple of months. Now that it has been over a year since my lasting posting on Swagger, it is a good time to revisit the subject.

(more…)

What is Docker?

Over the past one year, I posted a couple of blogs on Docker. I am not fully convinced that I have fully grasped or explained what is Docker. This is another attempt to fully understand and explain the basic concepts of Docker and the evolution of virtualization.

(more…)

XML Processing with Hive XML SerDe

Hive XML SerDe is an XML processing library based on Hive SerDe  (serializer / deserializer) framework. It relies on XmlInputFormat from Apache Mahout project to shred the input file into XML fragments based on specific start and end tags. You can find more about XmlInputFormat in “Hadoop in Practice”. The XML SerDe queries the XML fragments with XPath Processor to populate Hive tables. You can find the inner workings of this library here. In this posting, I will go over an example of XML processing in Hive using XML SerDe library.

(more…)