Limit search to available items
Book Cover
E-book
Author Kumar, Anuj

Title Microservices with Clojure : Develop event-driven, scalable, and reactive microservices with real-time monitoring
Published Birmingham : Packt Publishing, 2018

Copies

Description 1 online resource (330 pages)
Contents Cover; Copyright and Credits; Dedication; Packt Upsell; Contributors; Table of Contents; Preface; Chapter 1: Monolithic Versus Microservices; Dawn of application architecture; Monolithic architecture; Microservices; Data management; When to use what; Monolithic applications to microservices; Identifying candidates for microservices; Release cycle and the deployment process; Summary; Chapter 2: Microservices Architecture; Domain-driven design; Bounded context; Identifying bounded contexts; Organizing around bounded contexts; Components; Hexagonal architecture; Messaging and contracts
Direct messagingObserver model; Service contracts; Service discovery; Service registry; Service discovery patterns; Data management; Direct lookup; Asynchronous events; Combining data; Transactions; Automated continuous deployment; CI/CD; Scaling; Summary; Chapter 3: Microservices for Helping Hands Application; Design; Users and entities; User stories; Domain model; Monolithic architecture; Application components; Deployment; Limitations; Moving to microservices; Isolating services by persistence; Isolating services by business logic; Messaging and events; Extensibility
Workflows for Helping HandsService provider workflow; Service workflow; Service consumer workflow; Order workflow; Summary; Chapter 4: Development Environment; Clojure and REPL; History of Clojure; REPL; Clojure build tools; Leiningen; Boot; Clojure project; Configuring a project; Running a project; Running tests; Generating reports; Generating artifacts; Clojure IDE; Summary; Chapter 5: REST APIs for Microservices; Introducing REST; RESTful APIs; Status codes; Naming conventions; Using RESTful APIs via cURL; REST APIs for Helping Hands; Consumer and Provider APIs; Service and Order APIs
Datomic versus traditional databaseDevelopment model; Data model; Schema; Using Datomic; Getting started with Datomic; Connecting to a database; Transacting data; Using Datalog to query; Achieving immutability; Deleting a database; Summary; Chapter 8: Building Microservices for Helping Hands; Implementing Hexagonal Architecture; Designing the interceptor chain and context; Creating a Pedestal project; Defining generic interceptors; Interceptor for Auth; Interceptor for the data model; Interceptor for events; Creating a microservice for Service Consumer; Adding routes
Summary Chapter 6: Introduction to Pedestal; Pedestal concepts; Interceptors; The interceptor chain; Importance of a Context Map; Creating a Pedestal service; Using interceptors and handlers; Creating routes; Declaring routers; Accessing request parameters; Creating interceptors; Handling errors and exceptions; Logging; Publishing operational metrics; Using chain providers; Using server-sent events (SSE)Ă‚ ; Creating interceptors for SSE; Using WebSockets; Using WebSocket with Pedestal and Jetty; Summary; Chapter 7: Achieving Immutability with Datomic; Datomic architecture
The Microservice architecture is sweeping the world as the de facto pattern from which to build web-based applications and aids in designing scalable, easy-to-maintain web applications. This book will teach you common patterns and practices, showing you how to apply these using the Clojure programming language
Notes Defining the Datomic schema
Print version record
Subject Application software -- Development.
Web applications -- Design
Computer programming -- software development.
Web services.
Programming & scripting languages: general.
Computers -- Programming -- General.
Computers -- Programming Languages -- Java.
Application software -- Development
Clojure (Computer program language)
Form Electronic book
Author Vitz, Michael
ISBN 9781788626316
1788626311
9781788622240
1788622243