Giter VIP home page Giter VIP logo

eshopping's Introduction

.Net Core Microservices using Clean Architecture Implementation

image

Hi Friends,

Microservices are a design pattern in which applications are composed of independent modules that communicate with each other within well defined boundaries. This makes it easier to develop, test, and deploy isolated parts of your application.

Welcome to "Microservices learning series" - the ultimate course for developers who want to learn how to build scalable, efficient, and robust Microservices using the .Net Core platform along with Docker, Kubernetes, Identity Server 4, Rabbit MQ, Angular 15, GRPC, Istio Service Mesh, SQL Server, MongoDB, PostGreSQL, Redis, Ocelot, Nginx, Azure, Helm Charts, and Auto Scale.

In this comprehensive course, you'll gain hands-on experience with Docker and Kubernetes to deploy and manage your Microservices. You'll learn how to integrate Identity Server 4 for secure authentication and authorization, Rabbit MQ for messaging, and GRPC for efficient communication between Microservices.

You'll also learn how to use Istio Service Mesh to manage Microservices traffic, and how to configure and optimize SQL Server, MongoDB, PostGreSQL, and Redis for your Microservices. You'll use Ocelot and Nginx to manage your Microservices API gateway and deploy your Microservices to Azure using Helm Charts.

By the end of this course, you'll have a solid understanding of how to design, develop, and deploy Microservices using the latest industry-standard tools and practices, including auto-scaling.

Course Links:

Introduction

In this section, you will learn how to build full fledged Ecommerce app using asp.net core, docker, kubernetes, helm charts, service mesh and angular 15. Below are the key takeaways from this project. Anyone who wants to learn and write professional enterpise projects can refer this project. This project not only illustrates how to implement all layers to the point rather it adheres to best practices as followed by industry.

Here, you will learn variety of technologies like

  • Clean Architecture
  • .Net Core
  • Docker
  • Kubernetes
  • Azure
  • Microservices
  • Service Mesh
  • Angular
  • ELK Stack
  • Pub/Sub Pattern
  • GRPC
  • Repository Pattern
  • Unit of Work Pattern
  • Specification Pattern
  • Helm Charts

How Project is structured

Below, I have Pasted the high level glimpse project structure.

image

Client Structure goes like

image

Deployments

image

Warning and Disclaimer

Every effort applied to make this project complete and accurate to the topic, but no warranty is implied. Any implementation in this project are MY OWN and also borrowed from best practices segment. ALL content presented AS-IS, for learning purposes only. Also this course will go keep updated as and when new and stable framework gets released.

Installation

Follow these steps to get your development environment set up: (Before Run Start the Docker Desktop)

  1. Clone the repository
  2. Once Docker for Desktop is installed, go to the Settings > Advanced option, from the Docker icon in the system tray, to configure the minimum amount of memory and CPU like so:
  • Memory: 7 GB
  • CPU: 5
  1. At the root directory which include docker-compose.yml files, run below command:
docker-compose -f docker-compose.yml -f docker-compose.override.yml up -d

Project Overview

image

Technologies Used

image

Workflow

image

image

image

image

image

image

image

image

Pub/Sub Pattern

image

  • In the above diagram as we can see before checkout event created basket gets deleted from Redis database.

Container Management via Portainer

image

Elastic Search

image

ACR Workloads

image

AKS Workloads

image

Pods Overview Kube Lens

image

Deployments

image

Replicasets

image

ConfigMaps

image

Secrets

image

HPA (Horizontal Pods AutoScaler)

image

Istio enabled

kubectl apply -f istio-init.yaml kubectl apply -f istio-minikube.yaml kubectl apply -f kiali-secret.yaml

image

Istio via Kubelens

image

Kiali (Service Mesh Management for Istio)

We can port forward for the same using lens

This will bring Kiali UI like

image

Kiali catalog Workload

image

Kiali Service Overview

image

Graphana Visualization

image

eshopping's People

Contributors

rahulsahay19 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.