𝔖 Scriptorium
✦   LIBER   ✦

πŸ“

Microservices by examples using .NET Core. A book with lot of practical and architectural styles for Microservices using .NET Core

✍ Scribed by Biswa Pujarini Mohapatra, Baishakhi Banerjee, Gaurav Aroraa


Publisher
BPB Publications
Year
2019
Tongue
English
Leaves
290
Category
Library

⬇  Acquire This Volume

No coin nor oath required. For personal study only.

✦ Table of Contents


Cover
Microservices by Example Using .Net Core
Copyright
Contents
Chapter 1: An Introduction to Microservices
Understanding Microservices Concepts
What are Microservices
History of Microservices
Microservices are Modular and Independent
Microservices are Decentralized and Cross-functional
Microservices are Resilience
Microservices are Highly Scalable
Discussing Monolithic and History Behind it
Demo Application – Monolithic Web App
Use-Case of Our Demo Application
Requirements
Pre-requisite
Overview of the Architecture of Our Demo Application
Challenges in Monolithic Application
Discussing SOA
Understanding Service in Service-oriented Architecture
SOA - Architectural Principles
Discussing SOA Based Demo Application
Monolithic versus SOA
Explaining Concepts of Web Services, WCF, and So On
Discussing Important Concepts
C# 7.x
ASP.NET Core 2.1
EF Core 2.1
Dockers (Containers)
Adopting Microservices
Why Microservices?
Benefits of Microservices
Microservices versus SOA
Summary
Chapter 2: Understanding Microservices Architecture
Introduction
Characteristics of Microservices
How Microservice Architecture Works?
Pre-requisites of Microservices Architecture
Microservices Architecture of Online Hotel Reservation
Architecting Microservice-Based Applications using Azure Container Service
Docker Terminologies
When to choose .NET Core for Docker Containers
Modularized Microservices Architecture
Modularity in Microservices
Cohesive Microservices Architecture
Benefits of Micro services based Solution
Downside of Microservices based Solution
Microservices Boundaries
The Challenges of Drawing Boundaries
Hotel Booking APP: Defining the Microservices Boundaries
Identifying Domain-Model Boundaries for Each Microservice
Understanding Layered Architecture in Domain Driven Design
Designing a Microservice Domain Model
Communication Between Services
Understanding High-level design of Online Booking Application
Maturity Model of Micro Services
Benefits of Modularization and Cohesion
Summary.
Chapter 3: Designing the Microservice Application Layer
OOPS Basic.
Solid Principles
Design Patterns
Microservices
Online Hotel Booking App Requirements
Patterns for Data management in Microservices
Getting a Solution to the Problems
CQRS Pattern and Domain Driven Design (DDD)
Bounded Contexts
Breaking the Code
Interservice Communication
Application Lifecycle
Independent Life Cycles Boosts Developer Productivity
Tools Used
Summary.
Chapter 4: Hands on Microservices Development of Online Hotel Reservation App
Introduction
High-level Architecture of Online Hotel Reservation App
Development Environment setup of Online Hotel Reservation App
Implementing Authentication and Authorization in Microservices
Monolithic Application Authentication and Authorization
Microservices Authentication and Authorization Problems
Authenticating Using .NET Core Identity
Data model
Database Context
User Registration
Login
JWT Token
Testing the API
Authenticating Using External Providers
JWT Tokens for Authenticated Facebook Users
Implementation of Role-Based Authorization
Development of Microservices for Hotel Reservation
Manage Distributed Transactions Using Redis Cache
Communication Between Microservices
Communication Types
Implementing Event-Based Communication Between Microservices
Integration Events
Presentation Layer (Angular SPA)
Designing Functionality with Modules
Creating Component
Creating Service
Steps to Run Source Code
Summary
Chapter 5: Deployment of Microservices for App Modernization at Scale with Docker
Introduction to Docker
Docker Terminologies
Features of Docker
Prerequisites
Installation and Setup
Dockerize ASP.NET Core Application
.NET Core for Docker Containers
Dockerfile Overview
Build and Run the Docker Image
Defining Your Container Orchestrator with docker-compose.yml
Publishing a Single-Container Based Application to Docker
Publishing Multi-Container Based Application to Docker
Configuring CI/CD pipeline for DevOps Using MS Build
Prerequisites
Install Web Server
Prepare the Windows VM
Create a Deployment Group
Set up Continuous Integration
Set up Continuous Deployment
DevOps Culture
Summary
Chapter 6: Service Orchestration of Microservices Using Azure Service Fabric
What is Service Fabric
Service Fabric Architecture
Transport Subsystem
Federation Subsystem
Reliability Subsystem
Management Subsystem
Hosting Subsystem
Communication Subsystem
Testability Subsystem
Service Fabric Installation and Environment Setup
Prerequisites for Windows OS
Service Fabric Hosting Model
The Application Model
Stateful and Stateless Services
Monitoring
Availability of Stateless Services
Availability of Service Fabric stateful services
Summary
Chapter 7 : Integrating Various Components
Why is Integration Important?
What to Avoid During Integration?
Sample Business Case
Synchronous (Request-Response) Communication via RESTful
HTTP Requests Asynchronous Communication (Event-Driven) via Azure Service Bus
Circuit Breaker
Communication Between Services
Styles of Collaboration
Integration Patterns
Azure Service Bus
Azure Messaging Queue
Summary
Chapter 8: Hands on Integration with API Management
API Management
Overview
Offoading
Context and Problem
Solution
Issues and Considerations
When to Use this Pattern
Routing
Context and Problem
Solution
Issues and Considerations
When to Use This Pattern
Deploy to API Management
Security and Load Balancing
Summary
Chapter 9: Testing Microservices
Why is Testing Important?
Sample Business Case
Types of Testing that We Need
Test-Driven Development or TDD
Test Strategy
Unit Testing – Testing Each Unit of Development
Component Testing – Testing a Component as a Whole
Integration Testing – Testing the Multiple Components With Each Other
Contract Testing – Testing What is Exposed Externally
End to End Testing – Testing the Application as a Whole
Performance Testing
Sociable Versus Isolated Unit Tests
Stubs and Mocks – When to Use What?
Using Pact-Net-Core
Managing All Tests–Tips No One Tells You
Summary
Chapter 10: Extending Application with Logging
Why is Logging Important?
Types of Logging
Instrumentation and Telemetry
Diagnostics Tools within Azure
Persisting Diagnostic Data with Azure Storage
Logging Techniques and Implementation of ELMAH, nLog and Log4net
Summary
Chapter 11: What is Next?
What and Why
What are Microservices
Why Microservices?
Understanding Service in Service-oriented Architecture
SOA - Architectural Principles
Why We Took a Use Case and What We Discussed
Testing, Integration and Deployment
Docker in the Project and CI/CD
Security and Logging
Why is Logging Important?
Who is Using Microservices in the Industry


πŸ“œ SIMILAR VOLUMES


Building Microservices with . NET Core 2
✍ Aroraa, Gaurav πŸ“‚ Library πŸ“… 2017 πŸ› Packt Publishing Ltd 🌐 English

Cover -- Title Page -- Copyright -- Credits -- Foreword -- About the Author -- About the Reviewer -- www.PacktPub.com -- Customer Feedback -- Table of Contents -- Preface -- Chapter 1: An Introduction to Microservices -- Origin of microservices -- Discussing microservices -- Monolithic architecture

Microservices Design Patterns in .NET: M
✍ Trevoir Williams πŸ“‚ Library πŸ› Packt Publishing 🌐 English

<p><span>Learn to be deliberate and intentional in your design, technology, and pattern choices when developing an application using a microservices architecture.</span></p><h4><span>Key Features</span></h4><ul><li><span><span>Tackle common design problems when developing a microservices application

Pro Microservices in .NET 6: With Exampl
✍ Sean Whitesell, Rob Richardson, Matthew D. Groves πŸ“‚ Library πŸ“… 2022 πŸ› Apress 🌐 English

<p>Know the fundamentals of creating and deploying microservices using .NET 6 and gain insight from prescriptive guidance in this book on the when and why to incorporate them.</p><p>The microservices architecture is a way of distributing process workloads to independent applications. This distributi

Pro Microservices in .NET 6: With Exampl
✍ Sean Whitesell, Rob Richardson, Matthew D. Groves πŸ“‚ Library πŸ“… 2022 πŸ› Apress 🌐 English

<p>Know the fundamentals of creating and deploying microservices using .NET 6 and gain insight from prescriptive guidance in this book on the when and why to incorporate them.</p><p>The microservices architecture is a way of distributing process workloads to independent applications. This distributi

Pro Microservices in .NET 6: With Exampl
✍ Sean Whitesell, Rob Richardson, Matthew D. Groves πŸ“‚ Library πŸ“… 2022 πŸ› Apress 🌐 English

<p><span>Know the fundamentals of creating and deploying microservices using .NET 6 and gain insight from prescriptive guidance in this book on the when and why to incorporate them.</span></p><p><span>The microservices architecture is a way of distributing process workloads to independent applicatio