In this series


Now that our setup is done, and the foundation for a scalable architecture is ready, we can move forward and think more deeply about the desired design for our entire system.

We will try to setup the guidelines to follow whenever we have to implement the existing micro-services or to create new ones depending on the requirements of the design that we will opt for and we will have to do some DevOps adjustments to ensure that all pieces are properly functioning together. Meanwhile, it is important to mention that overall, the dull part of the setup is behind us and that moving forward, we are getting closer to the most fun part.

As mentioned since the beginning of this series, the main purpose of these articles is to firstly introduce the Micro-service Architecture and then to provide a step-by-step demonstration of how to design and implement it.

While there is no precise definition of this software architectural style, there are certain common characteristics around the scalability, continuous integration, automated deployment, intelligence in the endpoints, decoupled business logic, language agnostic components and decentralized control of data.

Given the educational nature and scope of this series, we will not be able to cover all of the above-mentioned elements, especially those related to real live production processes, such as CICD (Continuous Integration / Continuous Deployment). On the other hand, we will try to have a clear overview of all of the facets that are important from a design perspective.

System Definition

For learning purposes, we will be creating a Minimum Viable Product of an ERP (Enterprise Resource Planning) system that manages the product’s inventory of an e-commerce company. In order to make the process as smooth and straightforward as possible, we will be making some abstractions and avoiding to dig deep into ERP’s business logic. However, we will stick to the principal guidelines that define the work-flow of an ERPin order to give our MVP a more realistic approach.

#lumen #software-development #microservices #php #laravel

Microservices Boilerplate — with Lumen + Laravel + Nginx + Mysql → part (2/3)
3.70 GEEK