- Relevance of microservices architecture and benefits of Clojure's functional and simple features to implement it.
- Learn the best practices and common principals to avoid the common pitfalls while developing microservices.
- Utilize routing, async services, websockets etc.available in Pedestal framework in implementation of microservices.
Microservice architecture is sweeping the world as the de facto pattern to build web-based applications and aids in designing scalable, easy-to-maintain web applications. This book will teach you the common patterns and practices, showing you how to apply these using the Clojure programming language.
It will teach you the fundamental concepts of architectural design and RESTful communication, and show you patterns that provide manageable code that is supportable in development and at scale in production. We will provide you with examples on how to put these concepts and patterns into practice with Clojure. Whether you are planning a new application or working in an existing monolith, this book will explain and illustrate with practical examples how teams of all sizes can start solving problems with microservices. You will understand the importance of writing code that is asynchronous and non-blocking and how Pedestal helps us do this. Later, the book explains how to build Reactive microservices in Clojure, which adhere to the principles underlying the Reactive Manifesto. We finish off by showing you various techniques to monitor, test, and secure your microservices. By the end, you will be fully capable of setting up, modifying, and deploying a microservice with Clojure and Pedestal.
What you will learn
- Pros and Cons of Monolithic and Microservices based Architecture.
- Use of Clojure to effectively build a real-life application using Microservices.
- Gain practical knowledge of Clojure Pedestal framework and how to use the same to build Microservices.
- Explore various persistence patterns and learn how to use Apache Kafka to build Event Driven Microservices Architecture.
- Secure your Microservices using JWT.
- Monitor Microservices at scale using ELK stack.
- Deploy Microservices at scale using container orchestration platforms, like- Kubernetes.