Microservices by Example
Using .Net Core
by
Biswa Pujarini Mohapatra
Baishakhi Banerjee
Gaurav Aroraa
FIRST EDITION 2019
Copyright BPB Publications, INDIA
ISBN: 978-93-87284-58-6
All Rights Reserved. No part of this publication can be stored in a retrieval system or reproduced in any form or by any means without the prior written permission of the publishers.
LIMITS OF LIABILITY AND DISCLAIMER OF WARRANTY
The Author and Publisher of this book have tried their best to ensure that the programmes, procedures and functions described in the book are correct. However, the author and the publishers make no warranty of any kind, expressed or implied, with regard to these programmes or the documentation contained in the book. The author and publisher shall not be liable in any event of any damages, incidental or consequential, in connection with, or arising out of the furnishing, performance or use of these programmes, procedures and functions. Product name mentioned are used for identification purposes only and may be trademarks of their respective companies.
All trademarks referred to in the book are acknowledged as properties of their respective owners. This book is written solely for the benefit and guidance of the students.
Distributors:
BPB PUBLICATIONS
20, Ansari Road, Darya Ganj
New Delhi-110002
Ph: 23254990/23254991
MICRO MEDIA
Shop No. 5, Mahendra Chambers
150 DN Rd. Next to Capital Cinema,
V.T. (C.S.T.) Station,
MUMBAI-400 001
Ph: 22078296/22078297
BPB BOOK CENTRE
376 Old Lajpat Rai Market,
Delhi-110006
Ph: 23861747
DECCAN AGENCIES
4-3-329, Bank Street,
Hyderabad-500195
Ph: 24756967/24756400
Published by Manish Jain for BPB Publications, 20, Ansari Road, Darya Ganj, New Delhi-110002 and Printed by Repro India Ltd., Mumbai
About the Author(s)
Biswa Pujarini Mohapatra Main/Primary Author
Biswa has done MCA from ICFAI university, a TOGAF certified. She has over 13 years of experience in Enterprise Soware Services, Product Development & Management, evangelize and deliver new products. Drive the go-to-market strategy working closely with the sales team. Extensive experience in evolving Idealization to market reality to growth cycle with focused leadership while managing large teams through fast paced, unpredictable business environment. Deep techno-managerial skills and understanding of the Enterprise Software market. Served as an Application Architect, Project Lead and Application Developer in a wide variety of domains across Product development, BFSI and other verticals. Specialties: Application Design, Design Principles, Stake holder Management and Product Management. Development experience using: C#, ASP.NET, SQL Server, Dynamics CRM, Azure, Angular Js, RESTful API, Micro Services.
Baishakhi Banerjee Coauthor
Baishakhi has completed MCA from Techno India affiliated under WBUT and is also an MCTS. She has over 13 years of experience in working with MS Technologies but for past couple of years, while working in application design and architecture, she has started working with other technologies too. She believes that future is not about trying to find a solution within the scope of a certain technology, rather finding the technology that efficiently solves the problem. With this ideology, she is currently open to learn and explore as many technologies as possible. However, MS still holds the key to her heart.
Gaurav Aroraa - Coauthor
Gaurav has done M.Phil in computer science. He is an MVP, life time member of Computer Society of India (CSI), Advisory member of IndiaMentor, certified as a scrum trainer/coach, XEN for ITIL-F and APMG for PRINCE-F and PRINCE-P. Gaurav is Open source developer, Founder of Ovatic Systems Private Limited. Recently, Gaurav awarded as Icon of the year excellence in Mentoring Technology Startups for the year 2018-19 by Radio City A Jagran Initiative for his extraordinary work during his career of 20 years in the industry in the field of technology mentoring. You can tweet Gaurav on his twitter handle @g_arora.
Preface
This book predominately covers Microservices architecture with real-world example which can help professionals on ease adoption of this technology. Following the trend of modularity in real world, the idea behind Microservice By Examples is to allow developers to build their applications from various independent components which can be easily changed, removed or upgraded. Also, it is relevant now because of enterprises are moving towards DevOps/ Modernization, this book will emphasize on containers and Dockers as well.
Chapter 1: An Introduction to Microservices
This chapter starts with the basics of microservices, how and from where the buzz word came from. A brief discussion about the history of the microservices. Why one should go for microservices? When to use the microservices? Advantages of microservices etc.
Chapter 2: Microservices Architecture
This chapter will start with the discussion of Architectural concepts. We extend the discussion of monolithic and SOA applications. We will also discuss Conways law. We will understand microservices working as an architectural style and will explore SOLID (programing principles).
Chapter 3: Designing the Microservice Application Layer
This chapter starts with the basics of microservices, how and from where the buzz word came from. Best Practices and Design principles to consider while designing Microservices. Why one should go for microservices? When to use the microservices? Advantages of microservices etc.
Chapter 4: Hands on Micro Services Development of Online Hotel Booking App
This chapter delivers practical implementation of Microservices. How to design, follow best practices and Principles for Microservices. How to manage distributed transaction with a real-world example and managing DevOps?
Chapter 5: Deployment of Microservices for App-Modernization at Scale with Docker
This chapter starts with the basics of Azure Container Service. Deployment of Microservices for app-modernization with Docker. Advantages of Docker.
Chapter 6: Service Orchestration of Microservices using Azure Service Fabric
This chapter starts with the basics of microservices, how and from where the buzz word came from. A brief discussion about Azure Service Fabric. Why one should consider Azure Service fabric for Microservices?
Chapter 7: Integrating Various Components
This chapter is about implementing communication between the microservices built in the previous chapter.
Chapter 8: Hands on Integration with API Management
This chapter starts with basic of API Gateway? Why to use API gateway for Microservices. Advantages of API Management etc.
Chapter 9: Testing Microservices
This chapter will focus on the techniques for testing an application build using Microservices architectural style.
Chapter 10: Extending Application with Logging
This chapter is about configuring and implementing service monitoring. This chapter speaks about the monitoring strategies for micro-services.