Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Arrow up icon
GO TO TOP
Building Microservices with .NET Core 2.0

You're reading from   Building Microservices with .NET Core 2.0 Transitioning monolithic architectures using microservices with .NET Core 2.0 using C# 7.0

Arrow left icon
Product type Paperback
Published in Dec 2017
Publisher
ISBN-13 9781788393331
Length 300 pages
Edition 2nd Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Gaurav Aroraa Gaurav Aroraa
Author Profile Icon Gaurav Aroraa
Gaurav Aroraa
Arrow right icon
View More author details
Toc

Table of Contents (19) Chapters Close

Title Page
Credits
Foreword
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface
1. An Introduction to Microservices FREE CHAPTER 2. Implementing Microservices 3. Integration Techniques and Microservices 4. Testing Microservices 5. Deploying Microservices 6. Securing Microservices 7. Monitoring Microservices 8. Scaling Microservices 9. Introduction to Reactive Microservices 10. Creating a Complete Microservice Solution Index

Index

A

  • advantages, microservices
    • technology independence / Technology independence
    • interdependency removal / Interdependency removal
    • alignment with business goals / Alignment with business goals
    • cost benefits / Cost benefits
    • easy scalability / Easy scalability
    • security / Security
    • data management / Data management
    • integrating / Integrating monolithic
  • Amazon / Prerequisites for successful microservice deployments
  • API gateway
    • benefits, for microservices / Benefits of the API gateway for microservices
    • versus API management / API gateway versus API management
    • about / The API gateway
    • Azure API management, using as / Azure API management as an API gateway
  • AppKey
    • generating, for TodoListWebApp / Generation of AppKey for TodoListWebApp
  • Application Insights / Introduction of Application Insights
  • application monitoring / Application/system monitoring
  • application performance management (APM) / Introduction of Application Insights
  • aqua
    • reference link / Container security
  • architectures, before microservices
    • about / Architectures before microservices
    • monolithic architecture / The monolithic architecture
    • .NET stack, standardizing challenges / Challenges in standardizing the .NET stack
    • scaling / Scaling
    • service-oriented architecture (SOA) / Service-oriented architecture 
    • microservice-styled architecture / Microservice-styled architecture
  • ASP.NET-Docker project
    • reference link / Container scaling using Docker Swarm
  • ASP.NET web application
    • creating / Creating an ASP.NET Core web application
  • aspnetcore image
    • reference link / Creating an ASP.NET Core web application
  • asynchronous messaging / Asynchronous messaging
  • atomicity, consistency, isolation, and durability (ACID) / Fault tolerance
  • authentication / Security in monolithic applications
  • authorization / Security in monolithic applications
  • Auto Scaling feature / Auto Scaling
  • availability monitoring / Availability monitoring
  • availability set / Scaling virtual machines using scale sets
  • Azure Active Directory (Azure AD) / Azure Active Directory
  • Azure AD tenant
    • TodoListService, registering with / Registration of TodoListService and TodoListWebApp with Azure AD tenant
    • TodoListWebApp, registering with / Registration of TodoListService and TodoListWebApp with Azure AD tenant
  • Azure API management (Azure APIM)
    • about / The API gateway, Azure API management as an API gateway
    • reference link / The API gateway
    • using, as API gateway / Azure API management as an API gateway
    • API gateway / Azure API management as an API gateway
    • publisher portal / Azure API management as an API gateway
    • developer portal / Azure API management as an API gateway
    • policies / Azure API management as an API gateway
    • quota policy example / Rate limit and quota policy example
    • rate limit example / Rate limit and quota policy example
  • Azure Cloud
    • monitoring / Monitoring in Azure Cloud
  • Azure container services
    • reference link / Creating an ASP.NET Core web application
  • Azure key-vault
    • reference link / Configuring Visual Studio solution projects
  • Azure queues / Azure queues
  • Azure Redis Cache
    • about / Azure Redis Cache
    • references / Azure Redis Cache
  • Azure Resource Explorer Tool
    • reference link / Scaling virtual machines using scale sets
  • Azure Resource Manager (ARM) / Scaling virtual machines using scale sets
  • Azure Service Bus
    • brokered communication / Azure Service Bus
    • non-brokered communication / Azure Service Bus
    • prerequisites / Prerequisites
    • messages, sending to queue / Sending messages to the queue
  • Azure Service Bus queues
    • about / Azure Service Bus
    • implementing / Implementing an Azure Service Bus queue
  • Azure Service Fabric
    • about / Overview of Azure Service Fabric
    • references / Overview of Azure Service Fabric
  • Azure storage
    • used, for storing diagnostic data / Storing diagnostic data using Azure storage
    • WadLogsTable / Azure storage schema for diagnostic data
  • Azure storage schema
    • for diagnostic data / Azure storage schema for diagnostic data
  • Azure subscription
    • URL / Prerequisites

B

  • Backend For Frontend (BFF) / The API gateway, Azure API management as an API gateway
  • big database, monolithic application
    • single schema / Big database
    • numerous stored procedures / Big database
  • blob storage container
    • wad-control-container / Azure storage schema for diagnostic data
    • custom / Azure storage schema for diagnostic data
  • book-catalog microservice / The book-catalog microservice
  • build pipeline / Understanding the deployment terminology

C

  • C# 7.0
    • about / C# 7.0
    • reference link / C# 7.0
  • CacheCow
    • about / CacheCow
    • references / CacheCow
  • caching mechanism
    • about / Caching mechanism
    • client-side caching / Caching mechanism
    • server-side caching / Caching mechanism
    • CacheCow / CacheCow
    • Azure Redis Cache / Azure Redis Cache
  • case study, FlixOne bookstore application
    • about / Revisiting the Flix One case study
    • prerequisites / Prerequisites
    • transition, to product service / Transitioning to our product service
    • migrations / Migrations
    • database migrations / Database migration
    • repositories, revisiting / Revisiting repositories and the controller
    • controller, revisiting / Revisiting repositories and the controller
    • ViewModel / Introducing ViewModel
    • product controller / Revisiting the product controller
  • centralized logging / Centralized logging
  • challenges, in standardizing .NET stack
    • security / Challenges in standardizing a .NET stack
    • response time / Challenges in standardizing a .NET stack
    • throughput rate / Challenges in standardizing a .NET stack
    • frequent downtime / Challenges in standardizing a .NET stack
    • technology adoption / Challenges in standardizing a .NET stack
    • fault tolerance / Fault tolerance
  • circuit breaker
    • about / Circuit breakers
    • closed state / Closed state
    • open state / Open state
    • half-open state / Half-Open state
  • client-side caching / Caching mechanism
  • Common Query Responsibility Segregation (CQRS) / Data persistence model design
  • compensating transactions / Compensating transactions
  • Competing Consumers / Competing consumers
  • component testing / Component (service) testing
  • configuration settings
    • adding / Adding configuration settings
    • messages, receiving from queue / Receiving messages from the queue
  • Consistency, Availability, (network) Partition tolerance (CAP) / Eventual consistency
  • Consul / Service discovery
  • consumer-driven contracts / Consumer-driven contracts
  • consumer-driven contract tests / Consumer-driven contract tests
  • consumer-driven test
    • implementing / How to implement a consumer-driven test
  • containers
    • about / Containers, What are containers?
    • versus virtual machines / Suitability of containers over virtual machines
    • operation team's mindset, transformation / Transformation of the operation team's mindset 
    • are binaries / Containers are new binaries
    • binaries / Containers are new binaries
    • working, on machine / Does it work on your machine? Let's ship your machine!
  • container security / Container security
  • continuous delivery (CD) / Understanding the deployment terminology, Deployment
  • continuous deployment (CD) / Understanding the deployment terminology
  • continuous integration (CI) / Deployment, Understanding the deployment terminology, Deployment
  • contract testing
    • about / Contract testing
    • consumer-driven contracts / Consumer-driven contracts
  • correlation ID
    • using, in logging / Using a correlation ID in logging

D

  • database refactoring / Database refactoring
  • database sharding / Database sharding and partitioning
  • data persistence model design
    • scaling / Data persistence model design
  • decomposition
    • identifying, within monolith / Identifying decomposition candidates within monolithic
  • dependency injections / Introducing dependency injections
  • dependent service / The event-driven pattern
  • deployment / Understanding the deployment terminology
    • build / Understanding the deployment terminology
    • CI / Understanding the deployment terminology
    • CD / Understanding the deployment terminology
    • continuous delivery / Understanding the deployment terminology
    • release / Understanding the deployment terminology
  • deployment challenges, monolithic application
    • high-risk deployment / Deployment challenges
    • higher testing time / Deployment challenges
    • production bugs / Deployment challenges
  • deployment paradigm
    • need for / Need for a new deployment paradigm
  • deployment pipelines / Understanding the deployment terminology
  • diagnostic data
    • storing, Azure storage used / Storing diagnostic data using Azure storage
    • Azure portal, using / Using Azure portal
    • storage account, specifying / Specifying a storage account
    • Azure storage schema / Azure storage schema for diagnostic data
  • distributed transaction / The event-driven pattern
  • Docker
    • about / Introducing Docker
    • setting up, on machine / Setting up Docker on your machine
  • Docker compose / Introducing Docker
  • Docker container / Introducing Docker
  • Dockerfile / Introducing Docker, Creating an ASP.NET Core web application
  • Docker For Windows
    • installing / Prerequisites
  • Docker hub / Introducing Docker
  • Docker image / Introducing Docker
  • Docker registry / Introducing Docker
  • Docker swarm
    • about / Introducing Docker
    • used, for container scaling / Container scaling using Docker Swarm
  • Domain-Driven Design (DDD)
    • about / DDD and its importance for microservices
    • importance, for microservices / DDD and its importance for microservices, Importance for microservices
  • domain-driven model
    • characteristics / Domain model design
  • dotnet image
    • reference link / Creating an ASP.NET Core web application

E

  • ELK stack
    • about / A brief overview of the ELK stack
    • Elasticsearch / Elasticsearch
    • Logstash / Logstash
    • Kibana / Kibana
  • end-to-end tests / End-to-end (UI/functional) testing
  • endpoint monitoring / Endpoint monitoring
  • endurance testing / Performance testing
  • end user monitoring / End user monitoring
  • Enterprise Service Bus (ESB) / What makes a good service?
  • Entity framework (EF) / Transitioning to our product service
  • Entity Framework Core (EF Core)
    • about / Entity Framework Core
    • references / Entity Framework Core
  • etcd
    • about / Service discovery
    • reference link / Service discovery
  • event-driven pattern
    • about / The event-driven pattern
    • dependent service / The event-driven pattern
    • independent service / The event-driven pattern
  • event communication / Event communication
  • event communication, reactive microservices
    • security / Security
    • message-level security / Message-level security
    • scalability / Scalability
    • communication resilience / Communication resilience
  • event sourcing pattern / Event sourcing
  • Event Tracing for Windows (ETW)
    • about / Semantic logging
    • reference link / Semantic logging
  • eventual consistency / Eventual consistency

F

  • 12-factor app
    • about / Isolation requirements for microservice deployment
    • reference link / Isolation requirements for microservice deployment, Need for a new deployment paradigm
  • fault tolerance / Redundancy and fault tolerance
  • FlixOne / Prerequisites for microservices
  • FlixOne bookstore application
    • functional overview / Functional overview of the application
    • solution, for current challenges / Solutions for current challenges
    • deployment problems, handling / Handling deployment problems
    • better monolith applications, making / Making much better monolithic applications
    • transition, to product service / Transitioning to our product service
    • functionalities / Greenfield application
    • services, scoping / Scoping our services
    • book-listing microservice / The book-listing microservice
    • book-searching microservice / The book-searching microservice
    • shopping cart microservice / The shopping-cart microservice, The shopping-cart microservice
    • order microservice / The order microservice, The order microservice
    • user authentication / User-authentication
    • synchronous, versus asynchronous / Synchronous versus asynchronous
    • book catalog microservice / The book-catalog microservice
    • user auth microservice / The user-authentication microservice
  • framework-based strategy / Application/system monitoring
  • functional tests / End-to-end (UI/functional) testing

G

  • grant types
    • about / What is OAuth 2.0?
    • authorization code / What is OAuth 2.0?
    • implicit / What is OAuth 2.0?
  • granularity
    • about / Communication between microservices
    • reference link / Communication between microservices

H

  • health monitoring / Health monitoring
  • hired service / Azure Service Bus
  • horizontal scaling / Horizontal scaling or scale out, Horizontal scaling (scaling out)

I

  • independent service / The event-driven pattern
  • instrumentation / Instrumentation and telemetry, Instrumentation
  • Integrated Development Environments (IDE)
    • reference link / Visual Studio 2017
    • about / Visual Studio 2017
  • integration patterns
    • about / Integration patterns
    • API gateway / The API gateway
    • event-driven pattern / The event-driven pattern
    • event sourcing pattern / Event sourcing
    • eventual consistency / Eventual consistency
    • compensating transactions / Compensating transactions
    • competing consumers / Competing consumers
    • Azure Service Bus / Azure Service Bus
    • Azure queues / Azure queues
    • Azure Service Bus queue, implementing / Implementing an Azure Service Bus queue
    • configuration settings, adding / Adding configuration settings
  • integration testing / Integration testing
  • integration tests
    • implementing / Integration tests
  • isolated unit tests
    • versus sociable tests / Sociable versus isolated unit tests
    • about / Sociable versus isolated unit tests
  • issues, monolithic architecture style
    • about / Understanding the problems with the monolithic architectural style
    • .NET stack, standardizing / Challenges in standardizing a .NET stack
    • scaling / Scaling
    • organizational alignment / Organizational alignment
    • modularity / Modularity
    • big database / Big database

J

  • JSON padding (JSONP) / Azure API management as an API gateway
  • JSON Web Tokens (JWT)
    • about / JSON Web Tokens
    • example / JSON Web Tokens
    • reference link / JSON Web Tokens

K

  • Kibana / Kibana

L

  • load testing / Performance testing
  • logging
    • about / Logging
    • challenges / Logging challenges
    • strategies / Logging strategies
    • centralized logging / Centralized logging
    • correlation ID, using in / Using a correlation ID in logging
    • semantic logging / Semantic logging
  • Logstash / Logstash

M

  • mean time between failures (MTBF) / Monolithic application deployment challenges
  • mean time to recover (MMTR) / Monolithic application deployment challenges
  • message formats / Message formats
  • messaging, in microservices
    • about / Messaging in microservices, Messaging in microservices
    • synchronous messaging /
    • asynchronous messaging / Asynchronous messaging
    • formats / Message formats
  • microservice-styled architecture
    • about / Microservice-styled architecture
    • benefits / Microservice-styled architecture
  • microservice architectural style / Origin of microservices
  • microservice architecture
    • about / Understanding the microservice architecture
    • working / How does the microservice architecture work?
    • prerequisites / Prerequisites of the microservice architecture
  • microservice Auth example
    • with OpenID Connect / Microservice Auth example with OpenID Connect, OAuth 2.0, and Azure AD
    • with OAuth 2.0 / Microservice Auth example with OpenID Connect, OAuth 2.0, and Azure AD
    • with Azure AD / Microservice Auth example with OpenID Connect, OAuth 2.0, and Azure AD
  • microservice deployment
    • prerequisites / Prerequisites for successful microservice deployments
    • isolation requirements / Isolation requirements for microservice deployment
    • with Docker / Microservice deployment with Docker overview
  • microservice deployment example, with Docker
    • about / Microservice deployment example using Docker
    • Docker, setting up on machine / Setting up Docker on your machine
    • Docker, setting prerequisites / Prerequisites
    • ASP.NET web application, creating / Creating an ASP.NET Core web application
    • Docker support, adding / Creating an ASP.NET Core web application
  • microservice ecosystem / The microservice ecosystem
  • microservice monitoring solutions
    • about / Other microservice monitoring solutions
    • ELK stack / A brief overview of the ELK stack
    • Splunk / Splunk
  • microservices
    • origins / Origin of microservices
    • reference link / Origin of microservices
    • about / Discussing microservices
    • messaging mechanism / Messaging in microservices
    • using / Why should we use microservices?
    • advantages / Advantages of microservices, Important microservices advantages
    • versus SOA / SOA versus microservices
    • prerequisites / Prerequisites for microservices
    • size / Size of microservices
    • factors, for high-level isolation / Size of microservices
    • DDD, importance / DDD and its importance for microservices
    • communication / Communication between microservices
    • API gateway, benefits / Benefits of the API gateway for microservices
    • API gateway, versus API management / API gateway versus API management
    • testing / How to test microservices, Testing microservices
    • testing, challenges / Handling challenges
    • testing strategies / Testing strategies (testing approach)
  • microservices scalability
    • about / Microservice scalability
    • Scale-Cube model of scalability / Scale Cube model of scalability
  • microservice tests
    • about / Types of microservice tests
    • unit testing / Unit testing
    • component (service) testing / Component (service) testing
    • integration testing / Integration testing
    • contract testing / Contract testing
    • performance testing / Performance testing
    • end-to-end tests / End-to-end (UI/functional) testing
    • functional tests / End-to-end (UI/functional) testing
    • sociable unit test, versus isolated unit test / Sociable versus isolated unit tests
    • stubs / Stubs and mocks
    • mock / Stubs and mocks
    • implementing / Tests in action
    • test project, setting up / Getting ready for the test project
    • unit tests, implementing / Unit tests
    • integration tests, integrating / Integration tests
    • consumer-driven contract tests / Consumer-driven contract tests
  • Microsoft Azure
    • reference link / Azure Service Bus
  • Microsoft Azure Diagnostics / Microsoft Azure Diagnostics
  • Microsoft SQLServer (MSSQL)
    • about / Microsoft SQLServer
    • reference link / Microsoft SQLServer
  • Microsoft Visual Studio 2017
    • URL, for installing / Prerequisites
  • migrations, FlixOne bookstore application
    • code migration / Code migration
    • project, creating / Creating our project
    • model, adding / Adding the model
    • repository, adding / Adding a repository
    • repositories, registering / Registering the repositories
    • product controller, adding / Adding a product controller
    • ProductService API / The ProductService API
    • EF core support, adding / Adding EF core support
    • EF Core DbContext / EF Core DbContext
    • EF Core migrations / EF Core migrations
  • mocks / Stubs and mocks
  • monitoring
    • need for / The need for monitoring
    • health monitoring / Health monitoring, Monitoring
    • availability monitoring / Availability monitoring, Monitoring
    • performance monitoring / Performance monitoring, Monitoring
    • security monitoring / Security monitoring, Monitoring
    • SLA monitoring / SLA monitoring
    • sensitive data, auditing / Auditing sensitive data and critical business transactions
    • critical business transactions / Auditing sensitive data and critical business transactions
    • end user monitoring / End user monitoring
    • system failures, troubleshooting / Troubleshooting system failures, Monitoring
    • about / Monitoring
    • audit monitoring / Monitoring
  • monitoring, challenges
    • scale / Monitoring challenges, Monitoring challenges
    • DevOps mindset / DevOps mindset
    • data flow visualization / Data flow visualization
    • testing of monitoring tools / Testing of monitoring tools
    • component lifespan / Component lifespan
    • information visualization / Information visualization
  • monitoring, in Azure Cloud
    • about / Monitoring in Azure Cloud
    • Microsoft Azure Diagnostics / Microsoft Azure Diagnostics
    • diagnostic data, storing with Azure storage / Storing diagnostic data using Azure storage
    • Application Insights / Introduction of Application Insights
  • monitoring, strategies
    • about / Monitoring strategies, Monitoring strategies
    • application/system monitoring / Application/system monitoring
    • real user monitoring / Real user monitoring
    • semantic monitoring / Semantic monitoring and synthetic transactions
    • synthetic transactions / Semantic monitoring and synthetic transactions
    • profiling / Profiling
    • endpoint monitoring / Endpoint monitoring
    • scalability / Scalability
  • monolith application
    • deployment challenges / Monolithic application deployment challenges
  • monolithic architecture
    • about / Monolithic architecture, The monolithic architecture
    • user interface / Monolithic architecture
    • business logic / Monolithic architecture
    • database access / Monolithic architecture
    • challenges / Monolithic architecture
    • SOA / Service-Oriented architecture
    • reusability / What is a service?
    • stateless / What is a service?
    • contract-based / What is a service?
    • scalability / What is a service?
    • upgradation / What is a service?
  • monolithic architecture style
    • issues / Understanding the problems with the monolithic architectural style
  • monolith transitioning
    • about / Monolith transitioning
    • integration techniques / Integration techniques
    • deployment / Deployment
    • microservices, testing / Testing microservices
    • security / Security

N

  • .NET Core 2.0
    • URL, for installing / Prerequisites

O

  • OAuth 2.0 Roles
    • resource / What is OAuth 2.0?
    • resource owner / What is OAuth 2.0?
    • client / What is OAuth 2.0?
    • authorization server / What is OAuth 2.0?
  • object-oriented programming (OOP) / How does the microservice architecture work?
  • object-relational mappers (ORMs) / Entity Framework Core
  • Observable / Message-driven: a core of reactive microservices
  • Observer Design Pattern / Message-driven: a core of reactive microservices
  • OpenID Connect / What is OpenID Connect?
  • order microservice / The order microservice
  • Order Schema / Database refactoring
  • organizational alignment, monolithic application
    • same goal / Organizational alignment
    • different perspective / Organizational alignment

P

  • Pact
    • reference link / How to implement a consumer-driven test
  • Pact-net
    • reference link / How to implement a consumer-driven test
    • about / How Pact-net-core helps us achieve our goal
  • partitioning / Database sharding and partitioning
  • performance monitoring / Performance monitoring
  • performance testing
    • load testing / Performance testing
    • stress testing / Performance testing
    • soak testing / Performance testing
    • spike testing / Performance testing
  • policies, Azure API management
    • access restriction policies / Azure API management as an API gateway
    • authentication policies / Azure API management as an API gateway
    • cross domain policies / Azure API management as an API gateway
    • transformation policies / Azure API management as an API gateway
  • Polly
    • reference link / Half-Open state
  • prerequisites, microservice deployments
    • self-sufficient teams / Prerequisites for successful microservice deployments
    • CI / Prerequisites for successful microservice deployments
    • CD / Prerequisites for successful microservice deployments
    • infrastructure as code / Prerequisites for successful microservice deployments
    • cloud computing / Prerequisites for successful microservice deployments
  • principle of isolation, microservice deployment
    • service teams / Isolation requirements for microservice deployment
    • source control isolation / Isolation requirements for microservice deployment
    • build stage isolation / Isolation requirements for microservice deployment
    • release stage isolation / Isolation requirements for microservice deployment
    • deploy stage isolation / Isolation requirements for microservice deployment
  • product controller
    • Swagger support, adding / Adding Swagger support
  • profiling / Profiling

R

  • reactive microservices
    • about / Understanding reactive microservices
    • responsiveness / Responsiveness
    • resilience / Resilience
    • autonomous / Autonomous
    • message-driven / Message-driven: a core of reactive microservices
    • application, examining / Let's make code reactive
    • event communication / Event communication
    • data management / Managing data
    • project, creating / Coding reactive microservices, Creating the project
    • application, and database communication between / Communication between the application and the database
    • web client, creating / Client – coding it down
    • key attributes / Reactive microservices
  • real user monitoring / Real user monitoring
  • redundancy / Redundancy and fault tolerance
  • Root Cause Analysis (RCA) / SLA monitoring

S

  • scalability
    • about / Scaling, Scalability
    • infrastructure scaling / Infrastructure scaling
    • service design / Service design
  • scalable microservice
    • characteristics / Characteristics of a scalable microservice
  • Scale-Cube model of scalability
    • about / Scale Cube model of scalability
    • x-axis scaling / Scaling of x axis
    • z-axis scaling / Scaling of z axis 
    • y-axis scaling / Scaling of y axis 
  • scale sets
    • used, for scaling virtual machines / Scaling virtual machines using scale sets
  • scaling
    • about / Scaling, Scaling infrastructure
    • vertical scaling / Vertical scaling or scale up, Vertical scaling (scaling up)
    • horizontal scaling / Horizontal scaling or scale out, Horizontal scaling (scaling out)
    • deployment challenges / Deployment challenges
    • microservice infrastructure / Scaling the infrastructure
    • virtual machines, with scale sets / Scaling virtual machines using scale sets
    • auto scaling / Auto Scaling
    • container, with Docker swarm / Container scaling using Docker Swarm
  • seam
    • about / The concept of seam
    • module interdependency / Module interdependency
    • technology / Technology
    • team structure / Team structure
    • database / Database
    • master data / Master data
    • transaction / Transaction
  • security, in microservices
    • about / Security in microservices
    • traditional .NET auth mechanism, shortcomings / Why won't a traditional .NET auth mechanism work?
    • JSON Web Tokens (JWT) / JSON Web Tokens
    • OAuth 2.0 / What is OAuth 2.0?
    • OpenID Connect / What is OpenID Connect?
    • Azure Active Directory / Azure Active Directory
    • microservice Auth example, with OpenID Connect / Microservice Auth example with OpenID Connect, OAuth 2.0, and Azure AD
    • microservice Auth example, with OAuth 2.0 / Microservice Auth example with OpenID Connect, OAuth 2.0, and Azure AD
    • microservice Auth example, with Azure AD / Microservice Auth example with OpenID Connect, OAuth 2.0, and Azure AD
    • Azure API management, using as API gateway / Azure API management as an API gateway
    • container security / Container security
    • best practices / Other security best practices
  • security, in monolith applications / Security in monolithic applications
  • security monitoring / Security monitoring
  • security token service (STS) / What is OpenID Connect?
  • semantic logging / Semantic logging
  • semantic monitoring / Semantic monitoring and synthetic transactions
  • sensitive data
    • auditing / Auditing sensitive data and critical business transactions
  • server-side caching / Caching mechanism
  • service, collaboration styles
    • request/response / Styles of collaboration
    • event-based / Styles of collaboration
  • service-level agreements (SLA) / Availability monitoring
  • service-oriented architecture (SOA)
    • about / Service-Oriented architecture, Service-oriented architecture 
    • versus microservices / SOA versus microservices
    • advantages / Service-oriented architecture 
  • service communication
    • about / Communication between services
    • synchronous / Communication between services
    • collaboration styles / Styles of collaboration
  • service design
    • scaling / Scaling service design
    • data persistence model design, scaling / Data persistence model design
    • caching mechanism / Caching mechanism
    • redundancy / Redundancy and fault tolerance
    • fault tolerance / Redundancy and fault tolerance
  • service discovery mechanisms
    • about / Service discovery
    • Zookeeper / Service discovery
    • Consul / Service discovery
    • etcd / Service discovery
  • service registration / Service discovery
  • services
    • about / What is a service?
    • features, requisites / What makes a good service?
  • service testing / Component (service) testing
  • service tests / Testing pyramid
  • shopping-cart microservice / The shopping-cart microservice
  • SLA monitoring / SLA monitoring
  • SOA example scenario
    • projecting / What is a service?
  • soak testing / Performance testing
  • sociable tests
    • versus isolated unit tests / Sociable versus isolated unit tests
  • solitary tests / Sociable versus isolated unit tests
  • solutions, for making better monolith applications
    • dependency injections / Introducing dependency injections
    • database refactoring / Database refactoring
    • database sharding / Database sharding and partitioning
    • partitioning / Database sharding and partitioning
    • DevOps culture / DevOps culture
    • automation / Automation
    • testing / Testing
    • versioning / Versioning
    • deployment / Deployment
  • spike testing / Performance testing
  • Splunk
    • about / Splunk
    • altering functionalities / Alerting
    • reporting functionality / Reporting
  • Stock Schema / Database refactoring
  • stress testing / Performance testing
  • stubs / Stubs and mocks
  • Swagger
    • references / Adding Swagger support
    • about / Adding Swagger support
  • synchronous messaging /
  • synthetic transactions / Semantic monitoring and synthetic transactions
  • system failures
    • troubleshooting / Troubleshooting system failures
  • system monitoring / Application/system monitoring
  • system tests / Testing pyramid

T

  • Team Foundation Online Services (TFS) / Prerequisites for successful microservice deployments
  • telemetry / Instrumentation and telemetry, Telemetry
  • Test-Driven Development (TDD) / Testing, Unit testing
  • testing pyramid
    • about / Testing pyramid
    • reference link / Testing pyramid
    • unit tests / Testing pyramid
    • service tests / Testing pyramid
    • system tests / Testing pyramid
  • testing strategies, microservices
    • about / Testing strategies (testing approach)
    • proactive / Testing strategies (testing approach)
    • reactive / Testing strategies (testing approach)
  • test project
    • setting up / Getting ready for the test project
  • TodoListService
    • registering, with Azure AD Tenant / Registration of TodoListService and TodoListWebApp with Azure AD tenant
    • Visual Studio solution projects, configuring / Configuring Visual Studio solution projects
    • client certificates, generating on IIS Express / Generate client certificates on IIS Express
    • executing / Running both the applications
  • TodoListWebApp
    • registering, with Azure AD Tenant / Registration of TodoListService and TodoListWebApp with Azure AD tenant
    • AppKey, generating for / Generation of AppKey for TodoListWebApp
    • Visual Studio solution projects, configuring / Configuring Visual Studio solution projects
    • client certificates, generating on IIS Express / Generate client certificates on IIS Express
    • executing / Running both the applications
  • traditional .NET auth mechanism
    • shortcomings / Why won't a traditional .NET auth mechanism work?
  • Twistlock
    • reference link / Container security
  • Two Pizza Teams paradigm / Prerequisites for successful microservice deployments

U

  • unit testing / Unit testing
  • unit tests
    • about / Testing pyramid
    • reference link / Sociable versus isolated unit tests
    • implementing / Unit tests
  • user-authentication microservice / The user-authentication microservice

V

  • vertical scaling / Vertical scaling or scale up, Vertical scaling (scaling up)
  • virtual machines
    • versus containers / Suitability of containers over virtual machines
    • scaling, scale sets used / Scaling virtual machines using scale sets
  • Visual Studio 2017
    • about / Visual Studio 2017
    • references / Visual Studio 2017
  • Visual Studio Team Services (VSTS) / Microservice deployment with Docker overview

W

  • web services / Fault tolerance

X

  • x-axis scaling / Scaling of x axis

Y

  • y-axis scaling / Scaling of y axis 

Z

  • z-axis scaling
    • about / Scaling of z axis 
    • disadvantages / Scaling of z axis 
  • Zab
    • reference link / Service discovery
  • Zookeeper
    • about / Service discovery
    • reference link / Service discovery
lock icon The rest of the chapter is locked
arrow left Previous Section
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at €14.99/month. Cancel anytime
Visually different images