Java, Scala and the Reactive Platform from IBM
Ever since IBM participated in a $15 million funding round into Lightbend, I’ve been following the use of Lightbend’s Reactive Platform with the IBM Cloud. The move to microservices is driven by the demand from businesses for disruptive technologies that are transforming operations and supply chains. As Reactive Summit is coming up October 18–20 in Austin, TX, I decided to dig into the technology behind the announcement.
Fortunately, I found two tutorials by Paul Czarkowski from IBM about deploying a Lagom app to both IBM Cloud Private as well as the IBM Cloud Container Service. These both address the need for highly scalable microservices platforms that can automatically adapt to changes in business.
Lagom is a reactive microservices framework that you can download from GitHub. The framework offers extensive Java and Scala APIs to help people build microservices quickly. If you’re unfamiliar with Lagom, here’s a 2:43 video introduction.
One of the many cool things Lagom offers is the ability to start up all infrastructure with one command. Businesses that are disrupting old industries need scalable infrastructure that can be managed with the simplicity of a single server. These tools from Lagom, bring us closer to dialing up infrastructure when we need it.
You can use the same tools that you’ve always used, for example, the video shows IntelliJ IDEA with Lagom.
This looks like a great way to achieve scale out for microservices while in production, something that is required for agile business operations.
Although the video is short and got me excited, I really wanted to look at some code usage examples to assess how things worked.
Paul’s article first took me through chirper, a Twitter-like application available on GitHub. It pointed me to the base infrastructure layer of IBM Cloud Private, which is a project on GitHub that allowed me to launch a test system with VirtualBox and Vagrant.
$ git clone https://github.com/IBM/deploy-ibm-cloud-private.git
$ cd deploy-ibm-cloud-private
In addition to a number of other nice tools, I learned about IBM Spectrum Conductor for Containers to help with the creation of the IBM Cloud Private Docker registry namespace.
Looking at Paul’s blog, deployment is easy with helm.
$ cd deploy/helm
$ helm repo add incubator https://kubernetes-charts-incubator.storage.googleapis.com
$ helm dependency update
$ helm install -n chirper . — values examples/ibm-cloud-private/values.yaml
You can then access your application.
If you’re interested in using a microservices framework for Java or Scala, I suggest you read through Paul’s tutorials. They’ll give you great overview of the Reactive Platform from IBM.
For more information, read this interview of Jonas Boner, Lightbend CTO and creator of the Akka framework.
If you have an opinion on Reactive Platform from IBM or are going to Reactive Summit, please