Saturday, 8 May 2021

Google's Guava Gets Coverage in Java Magazine

Andrew Binstock covers the 30th major release of Google's all-purpose Guava library in this Java magazine article. One of its benefits is allowing earlier versions of Java to run features that formally came later in the Java canon.

Monday, 28 September 2020

JDK 15 Reaches General Availability on 15 September 2020: EdDSA Embraced, Nashorn Expelled

 JDK 15 is unleashed

One of its fine features is support for EdDSA (Edwards Curve Digital Signature Algorithm described in RFC8032), an elliptic curve signature scheme. The Edwards Curve is named after the late American mathematician Harold Edwards who graduated with a PhD in mathematics in 1961 from Harvard.

One of JDK 15's high-profile "subtractions"is the Nashorn JavaScript engine (which has been removed as per recommendation of JEP372). Nashorn has been declared "challenging to maintain" with the rapid development of the ECMAScript standard underlying JavaScript.

The Z Garbage Collector gets a boost from being a mere "experimental feature" to now becoming a "product feature" as per JEP377 (without altering the default GC which remains G1). Nod to 377 author Per Liden.

Tuesday, 1 October 2019

Scalable Database Building with Cassandra

What is it that makes Cassandra just so scalable? Certainly, it supports clusters spanning multiple datacenters. Some of the principles it follows are as follows:

1. No single points of failure (Decentralized)
2. Fault tolerance through Replication to multiple nodes, enabling failing nodes to be replaced without data loss
3. High performance (as measured in benchmarking against other NoSQL databases)

The Weather Channel, CERN and Instagram are among the top-billed users of Cassandra.

Monday, 30 September 2019

Apache Kafka

Apache Kafka is a distributed event streaming platform. 

It supports publish, subscribe operations (similar to a message queue) and stores streams of records in a fault-tolerant way.

The basic object in Kafka is an array of bytes with some optional metadata known as the key. 

Messages may be structured according to a schema (possibly using JSON or XML) although Apache Avro, a serialization framework for Hadoop, is increasingly popular. Avro supports strong typing and schema evolution.

The Real Kafka - Kafka was a writer who was born in Prague (at the time part of the mighty Austro-Hungarian empire). His well-known works include "Die Verwandlung" (The Metamorphosis) first published in 1915.

Thursday, 26 September 2019

Convergence of Oracle JDK and OpenJDK

Donald Smith at Oracle (Sr. Director of Product Management) announced in 2018 that Oracle JDK and OpenJDK will soon converge with the intent that there are no technical differences in binaries.

Monday, 12 August 2019

What is OJVM?

OJVM is Oracle's database embedded JVM. The code runs in the same memory space as SQL and PL/SQL. It currently supports Java 8.

Saturday, 9 March 2019

Polyglot Runtime - GraalVM

Graal is a JIT compiler with multi-language support. It is based on Oracle's JDK8 with JVMCI support. Languages supported include Python, R and Ruby.