lagom

Getting Started with Lagom Framework

Reading Time: 5 minutes Introduction Lagom is a highly opinionated framework for building flexible, resilient, and responsive systems in Java and Scala. It’s an open-source framework maintained by Lightbend. It offers libraries and development environments to build systems based on reactive microservices with best practices. It supports multiple aspects from development to deployment by leveraging other reactive frameworks from Lightbend like Play and Akka: We design microservices to be isolated and autonomous, with Continue Reading

Serialization in Lagom

Reading Time: 2 minutes In my previous blogs on Lagom, we discussed Persistent Entity and Read-side and Write side in Lagom. In this blog, I’m going to discuss how serialization is handled in Lagom. But before that let’s understand what serialization is ? Serialization is a process of converting an object into the stream of bytes so that you can store or transmit it in memory, database etc. Its Continue Reading

Understanding data persistence in Lagom

Reading Time: 4 minutes When we create any microservice, or in general any service, one of the biggest task is to manage data persistence. Lagom supports various databases for doing this task. By default, Lagom uses Cassandra to persist data.

A Beginner’s Guide to Writing Acceptance Testing for Lagom Microservices with Cucumber

Reading Time: 3 minutes In software development, acceptance criteria is a way via which a client communicates their expectations to engineering team. Also, it acts as a list of conditions upon completion of which a software/app is marked as complete. Since acceptance criteria is an important part of software development, it becomes important to determine that the acceptance criteria is met by the software or not. This sub-discipline of Continue Reading

Lagom Persistence API with Couchbase

Reading Time: 4 minutes In this blog, I will talk about using Couchbase with Lagom’s Persistent Entity API. And then we will see how we can query for fetching the data. We already know that Lagom handles data persistence with ‘Persistent Entity’ which holds the state of individual entities. And to interact with them one must know the identifier of the entity. So Lagom provides the support to build Continue Reading

Lagom Zero Hour: CQRS Concepts

Reading Time: 4 minutes In this blog, we will discuss CQRS and how it is different from old approaches. CQRS stands for Command Query Responsibility Segregation. The approach that individuals use for interacting with a data system is to treat it as a CRUD datastore. By this, I mean that we have a mental model of some record structure. We think about producing new records, scanning records, updating existing records, Continue Reading

The yarn of Lagom: Bye-bye Monoliths!

Reading Time: 4 minutes The Microservice architecture is in an uproar, in the industry and the business domain. The Microservice architecture tackles the drawbacks associated with the Monolithic architecture. The Lagom framework is a front-runner in the development of modern enterprise applications. This blog is the first in a multi-part series on The Lagom framework. In this blog, I’d take you through the following topics: Why Microservices and not Continue Reading

Introduction To Lagom Framework

Migrating to Lagom 1.4.x?

Reading Time: 2 minutes Hi, In this blog we will discuss some of the challenges we faced while migrating lagom version from 1.3.x to 1.4.x that can be helpful if you are thinking to migrate your lagom version. But firstly we will see the versions we should have for Scala, Play and Akka. Play and Akka Versions While migrating Play and Akka version too needs to upgrade. With Lagom Continue Reading

Transport Cinnamon Matrices From Lagom To Prometheus

Reading Time: 3 minutes Monitoring is a pain when it comes to distributed applications, and even more when you have shared or non-shared variables to monitor in your application. Here in this blog, I’ll explain two tools which can ease the monitoring efforts, one for generating metrics called Cinnamon and other to visualize them, called Prometheus. Let’s have a quick brief intro about these two – Prometheus – An open-source monitoring system with Continue Reading

Custom ErrorHandlers and Lagom

Reading Time: 3 minutes Hello everyone, it’s been quite a while now since I started working on Lagom(java) and it was only recently when I came across a scenario wherein I was required to override the ErrorHandler provided by Play in my Lagom microservice. As you all already know that Lagom is built on top of Play and Akka, so there will be times when we’ll be required to Continue Reading

4 Steps to Resolve CORS – Lagom.

Reading Time: 2 minutes Welcome All!! In this blog, we are going to discuss about the CORS issue and how it has to be resolved while working with Lagom. So Let’s begin. What is CORS? CORS: Cross Origin Resource Sharing Cross-origin resource sharing (CORS) is a mechanism that allows restricted resources (e.g. fonts) on a web page to be requested from another domain outside the domain from which the Continue Reading

A Beginner’s Guide to Deploying a Lagom Service Without ConductR

Reading Time: 2 minutes How to deploy a Lagom Service without ConductR? This question has been asked and answered by many, on different forums. For example, take a look at this question on StackOverflow – Lagom without ConductR? Here the user is trying to know whether it is possible to use Lagom in production without ConductR or not. To which the best answer that came up was – “Yes, it is Continue Reading

Circuit Breaker Panel with lagom

Reading Time: 2 minutes Up to v1.3.x, you could use circuit breaker pattern with lagom only in service descriptor usually. To apply circuit breaker to some arbitrary API you had to generally use the underlying akka circuit breaker . How to use circuit breaker with unmanaged services is explained pretty well at https://blog.knoldus.com/2017/06/15/lagom-circuit-breaker-what-why-and-how/  and if you want to poke around with the underlying akka circuit breaker you can take a look at https://doc.akka.io/docs/akka/2.5/common/circuitbreaker.html. To use Continue Reading