Microservices with Clojure

The common patterns and practices of the microservice architecture and their application using the Clojure programming language.
Preview in Mapt

Microservices with Clojure

Anuj Kumar

The common patterns and practices of the microservice architecture and their application using the Clojure programming language.
Mapt Subscription
FREE
$29.99/m after trial
eBook
$25.20
RRP $35.99
Save 29%
Print + eBook
$44.99
RRP $44.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$25.20
$44.99
$29.99 p/m after trial
RRP $35.99
RRP $44.99
Subscription
eBook
Print + eBook
Start 14 Day Trial

Frequently bought together


Microservices with Clojure Book Cover
Microservices with Clojure
$ 35.99
$ 25.20
Understanding Software Book Cover
Understanding Software
$ 23.99
$ 16.80
Buy 2 for $34.30
Save $25.68
Add to Cart

Book Details

ISBN 139781788622240
Paperback336 pages

Book Description

The microservice architecture is sweeping the world as the de facto pattern with which to design and build scalable, easy-tomaintain web applications. This book will teach you common patterns and practices, and will show you how to apply these using the Clojure programming language.

This book 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 of how to put these concepts and patterns into practice with Clojure. This book will explain and illustrate, with practical examples, how teams of all sizes can start solving problems with microservices.

You will learn 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 that adhere to the principles underlying the Reactive Manifesto. We finish off by showing you various ways 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.

Table of Contents

Chapter 1: Monolithic Versus Microservices
Dawn of application architecture
Monolithic architecture
Microservices
When to use what
Monolithic applications to microservices
Summary
Chapter 2: Microservices Architecture
Domain-driven design
Components
Messaging and contracts
Service discovery
Data management
Automated continuous deployment
Summary
Chapter 3: Microservices for Helping Hands Application
Design
Monolithic architecture
Moving to microservices
Workflows for Helping Hands
Summary
Chapter 4: Development Environment
Clojure and REPL
Clojure build tools
Clojure project
Clojure IDE
Summary
Chapter 5: REST APIs for Microservices
Introducing REST
RESTful APIs
REST APIs for Helping Hands
Summary
Chapter 6: Introduction to Pedestal
Pedestal concepts
Creating a Pedestal service
Using server-sent events (SSE) 
Using WebSockets
Summary
Chapter 7: Achieving Immutability with Datomic
Datomic architecture
Using Datomic
Summary
Chapter 8: Building Microservices for Helping Hands
Implementing Hexagonal Architecture
Creating a microservice for Service Consumer
Creating a microservice for Service Provider
Creating a microservice for Services
Creating a microservice for Order
Creating a microservice for Lookup
Creating a microservice for alerts
Summary
Chapter 9: Configuring Microservices
Configuration principles
Using Omniconf for configuration
Managing application states with mount
Summary
Chapter 10: Event-Driven Patterns for Microservices
Implementing event-driven patterns
Introduction to Apache Kafka
Using Kafka for Helping Hands
Summary
Chapter 11: Deploying and Monitoring Secured Microservices
Enabling authentication and authorization
Monitoring microservices
Deploying microservices at scale
Summary

What You Will Learn

  • Explore the pros and cons of monolithic and microservice architectures
  • Use Clojure to effectively build a reallife application using Microservices
  • Gain practical knowledge of the Clojure Pedestal framework and how to use it to build Microservices
  • Explore various persistence patterns and learn how to use Apache Kafka to build event-driven microservice architectures
  • Secure your Microservices using JWT
  • Monitor Microservices at scale using the ELK stack
  • Deploy Microservices at scale using container orchestration platforms such as Kubernetes

Authors

Table of Contents

Chapter 1: Monolithic Versus Microservices
Dawn of application architecture
Monolithic architecture
Microservices
When to use what
Monolithic applications to microservices
Summary
Chapter 2: Microservices Architecture
Domain-driven design
Components
Messaging and contracts
Service discovery
Data management
Automated continuous deployment
Summary
Chapter 3: Microservices for Helping Hands Application
Design
Monolithic architecture
Moving to microservices
Workflows for Helping Hands
Summary
Chapter 4: Development Environment
Clojure and REPL
Clojure build tools
Clojure project
Clojure IDE
Summary
Chapter 5: REST APIs for Microservices
Introducing REST
RESTful APIs
REST APIs for Helping Hands
Summary
Chapter 6: Introduction to Pedestal
Pedestal concepts
Creating a Pedestal service
Using server-sent events (SSE) 
Using WebSockets
Summary
Chapter 7: Achieving Immutability with Datomic
Datomic architecture
Using Datomic
Summary
Chapter 8: Building Microservices for Helping Hands
Implementing Hexagonal Architecture
Creating a microservice for Service Consumer
Creating a microservice for Service Provider
Creating a microservice for Services
Creating a microservice for Order
Creating a microservice for Lookup
Creating a microservice for alerts
Summary
Chapter 9: Configuring Microservices
Configuration principles
Using Omniconf for configuration
Managing application states with mount
Summary
Chapter 10: Event-Driven Patterns for Microservices
Implementing event-driven patterns
Introduction to Apache Kafka
Using Kafka for Helping Hands
Summary
Chapter 11: Deploying and Monitoring Secured Microservices
Enabling authentication and authorization
Monitoring microservices
Deploying microservices at scale
Summary

Book Details

ISBN 139781788622240
Paperback336 pages
Read More

Read More Reviews

Recommended for You

Understanding Software Book Cover
Understanding Software
$ 23.99
$ 16.80
Network Programming with Rust Book Cover
Network Programming with Rust
$ 35.99
$ 25.20
Nginx HTTP Server - Fourth Edition Book Cover
Nginx HTTP Server - Fourth Edition
$ 35.99
$ 25.20
Amazon EC2 Master Class (with Auto Scaling and Load Balancer) [Video] Book Cover
Amazon EC2 Master Class (with Auto Scaling and Load Balancer) [Video]
$ 47.99
$ 40.80
Hands-on with Go [Video] Book Cover
Hands-on with Go [Video]
$ 124.99
$ 106.25
Effective Jenkins: Improving Quality in the Delivery Pipeline with Jenkins [Video] Book Cover
Effective Jenkins: Improving Quality in the Delivery Pipeline with Jenkins [Video]
$ 124.99
$ 106.25