O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

.NET Core Microservices: Transitioning monolithic architectures using microservices with .NET Core

Video Description

Build distributed system using microservices architecture

About This Video

  • Learn how to work with the microservice architecture using the .NET Core platform to build a distributed system
  • Use the RabbitMQ service bus, MongoDB NoSQL database, JSON WEB TOKENS for authentication, and Docker to deploy applications to the cloud
  • A practical course about commands, events, handlers, and other design patterns that are commonly used for building distributed applications

Description

Microservices are an architectural style that promotes the development of complex applications as a suite of small services based on business capabilities. This course will help you identify the appropriate service boundaries within the business.

We'll start by looking at what microservices are, and their main characteristics. We will develop a basic distributed system using the microservice architecture and tools such as RabbitMQ service bus, to send messages across the separated services, or MongoDB, which is a NoSQL database. Within the course, we will focus on creating the HTTP API to act as a gateway to the whole system and so-called Activities Service, responsible for handling the incoming messages (or actually the commands that will be distributed through the services bus). We'll also implement the Identity Service, which will serve JSON Web Tokens (JWT) to authenticate requests incoming to the API. Our application will let the user store information about the activities performed at a given date for a selected category, for example, work, tasks, sport, and so on.

Once the request to save the activity is published within the system, the Activities Service will handle the business logic and decide whether the activity is valid, which will eventually result in publishing the event about processing the successful or rejected activity. In the course, you will also learn about commands and events as well as handlers which is one of the most popular design patterns when it comes to creating distributed systems.

By the end of the course, your services will be built using ASP.NET Core framework and later on, you will use tools such as Docker and Docker Compose to pack your application into the container and deploy it to the virtual machine running in the cloud.

What you will learn

  • Use NET Core platform to build a microservices architecture
  • Send messages through distributed system with the RabbitMQ service bus
  • Store data in the NoSQL database, MongoDB
  • Store user identities and authenticating requests using JWT
  • Deploy the application to the cloud with Docker and Docker Compose
  • Explore commands, events, handlers and other design patterns
  • Delve into unit- and integration-testing the distributed system

Who should take this course

This video course is for .NET Core developers who want to learn and understand the microservice architecture and implement it in their .NET Core applications. It's ideal for developers who are completely new to microservices or have just a theoretical understanding of this architectural approach and want to gain a practical perspective in order to better manage application complexity.

About the author

Born and raised in Kraków, Piotr Gankiewicz holds an M.Sc.Eng. degree in Applied Informatics. He has over 7 years' experience as software engineer and architect but is also interested in topics such as DevOps. He is a co-founder of the Noordwind teal organization and is a full stack developer working mainly with C#, .NET, .NET Core, and JavaScript technologies. He's also a big fan of DDD, CQRS, RESTful APIs, and distributed systems using the microservices pattern. Piotr is a well-known member of the Polish .NET community and his mission is to deliver the best content possible in terms of free and open software as well as programming courses. On top of that, he's an active open source contributor, consultant, blogger, public speaker, mentor, lecturer and co-organizer of the .NET Core Tour. In any spare time he enjoys lifting weights, running, and riding a motorcycle.

About Packt Video

Packt Video publishes friendly, practical video tutorials, packed with practical skills, concepts and guidance to help you succeed with new technologies and tasks. Packt Video’s series include Learn, Hands-On, Mastering, In 7 Days, Troubleshooting, and more. Our courses cover web and software development, security and ethical hacking, data science, and other key tech topics. We exist to make cutting-edge topics accessible for all.

GitHub Link

The code bundle for this video course is available at - https://github.com/PacktPublishing/.NET-Core-Microservices