Architecture

Hexagonal Architecture a silver bullet for Fintech Application

Reading Time: 6 minutes Hello folks, In this article,  I will discuss the best possible approach to start building any fintech product. We will see how this approach will tackle common fintech issues at the early development phase. It will also help us make the right decisions and define the appropriate strategy to meet business objectives. After working for more than 4 years in the Fintech domain, I have Continue Reading

Enabling CORS in Node.js

Reading Time: 2 minutes In the last blog, we’ve learnt the basic about the CORS, how we can setup and how it works. Now ini this blog, we’re going to learn how we can enable the it in node.js CORS is a browser security feature that restricts cross-origin HTTP requests with other servers and specifies which domains access your resources. Let’s say accessing images, videos, iframes, or scripts from Continue Reading

A Guide to CORS in Node.js with Express

Reading Time: 4 minutes Introduction Node.js is an open-source and cross-platform runtime used when executing JavaScript code on the server-side. One of the popular Node.js server frameworks is Express. Implementing CORS in Node.js helps you access numerous functionalities on the browser. Express allows you to configure and manage an HTTP server to access resources from the same domain. The three parts that form an origin are protocal, domain, and port. Let’s Continue Reading

Distributed Messaging Patterns | Reactive Architecture

Reading Time: 3 minutes In this blog we are gonna learn about messaging and patterns of messaging. We are gonna learn how asynchronous messaging works. Asynchronous messaging provides us a lot of flexibility in our system. As an example, we can take large portions of our system offline and have our users not notice any difference in functionality. We can also enhance scalability of our system. For example, if Continue Reading

Axon Part 3: Exploring The AxonIQ Initializr

Reading Time: 3 minutes Prerequisites: If you are reading this blog I assume you are already familiar with the Axon Framework basics. If not, please visit “Axon Part 1: An Introduction to Axon Framework” to get started  with Axon. Introduction: Initializers are the tools that help us start off with our project right away by automating some of the tasks which we need to go through every time we Continue Reading

Backpressure in Akka Stream

Reading Time: 4 minutes “Reactive Streams” — whenever we come across these words, there are two things that come to our mind. The first is asynchronous stream processing, and the second is non-blocking backpressure. In this blog, we are going to learn about the latter part. Understanding Backpressure Very simply put, the idea behind backpressure is the ability to say “hey slow down!”. Let’s start with an example that Continue Reading

Axon Part 1: An Introduction to Axon Framework

Reading Time: 3 minutes This is the first part of an ongoing series of blogs explaining Axon Framework. This blog will help you get started with axon and get a basic understanding of the same. Prerequisites Understanding Axon requires a basic knowledge of a few Axon concepts. Those are: Microservices Command Query Responsibility Segregation(CQRS) Commands, Events and Queries Domain Driven Design(DDD) Event Sourcing SAGA Design Pattern Introduction Problem: The Continue Reading

Introduction to Domain Driven Design (DDD)

Reading Time: 3 minutes What is Domain? To define domain-driven-design we should first establish what we mean by domain. The common dictionary definition of the domain is a sphere of knowledge, influence, or activity. In the context of software engineering, it refers to the subject area on which the application is intended to apply. For example, if you are building an E-commerce software, in this case, sales will be Continue Reading

CAP Theorem | Building Scalable Systems | Reactive Architecture

Reading Time: 3 minutes CAP Theorem, a Distributed System must account for this theorem which means when two or more systems try to connect with each other they need to account this Theorem. In this blog, we are gonna discuss about this theorem and how we have to sacrifice any factor while communicating with another system. Apart from this we’ll also discuss some other related terminologies and theorems. CAP Continue Reading

Reactive Architecture: Introduction to Reactive Systems

Reading Time: 2 minutes In this post, we are going to talk about reactive system what exactly we mean by reactive systems and how the software industry or application have evolved over a period of time. So today we want a highly reactive system. This post is about understanding the term Reactive System. What exactly we mean by such a system. What is a Reactive System? A system that Continue Reading

Performance v/s Scalability in Reactive Microservices

Reading Time: 2 minutes Performance and Scalability are the two main factors that come into account when creating a Distributed System. When people talk about these two terminologies they very often use these two words synonymously. However, they mean different things. As there’s a lot of misunderstanding so in this blog we’ll discuss Performance and Scalability, their differences and relation if any. Performance – Performance is all about optimizing Continue Reading

What Is Liskov Substitution Principle (LSP)? With Real World Examples!

Reading Time: 4 minutes In this article, we are going to discuss what is Liskov Substitution Principle (LSP) with real world examples. So your Object-Oriented Programming skills are at par and now you want to apply your knowledge to live projects. After all, understanding the 4 basic pillars of Object-Oriented Programming and knowing a few cool things like constructor chaining and static methods should be enough to pull off Continue Reading

Hexagonal Architecture

Reading Time: 2 minutes As the 12 factor app states, that each component of an application should work independent of each other. This is required in order to make the update process simpler. This is where many developers use architectural pattern, commonly known as hexagonal architecture. The main aim of this architecture is to divide the application into loosely couple components. These components can then be connected using ports Continue Reading