Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Arrow up icon
GO TO TOP
Microservices Development Cookbook

You're reading from   Microservices Development Cookbook Design and build independently deployable modular services

Arrow left icon
Product type Paperback
Published in Aug 2018
Publisher Packt
ISBN-13 9781788479509
Length 260 pages
Edition 1st Edition
Tools
Concepts
Arrow right icon
Author (1):
Arrow left icon
 Osman Osman
Author Profile Icon Osman
Osman
Arrow right icon
View More author details
Toc

Table of Contents (16) Chapters Close

Title Page
Copyright and Credits
Packt Upsell
Contributors
Preface
1. Breaking the Monolith FREE CHAPTER 2. Edge Services 3. Inter-service Communication 4. Client Patterns 5. Reliability Patterns 6. Security 7. Monitoring and Observability 8. Scaling 9. Deploying Microservices 1. Other Books You May Enjoy Index

Index

A

  • access keys
    • reference / How to do it...
  • Actuator / Collecting metrics with StatsD and Graphite
  • Akamai / Fronting your services with a CDN
  • alerts
    • configuring / Alerting us when something goes wrong, How to do it...
  • Amazon Machine Image (AMI) / How to do it...
  • Apache Kafka
    • about / Building event-driven microservices
    • reference / Building event-driven microservices
  • Apache Thrift
    • using / Using Thrift, How to do it...
    • about / Using Thrift
    • reference / How to do it...
  • Apache ZooKeeper / Service discovery
  • API Gateways
    • used, for routing requests to services / Using API Gateways for routing requests to services, Design considerations, How to do it...
    • design considerations / Design considerations
  • APIs
    • evolving / Evolving APIs, How to do it...
  • Application Load Balancer (ALB) / Building auto-scaling clusters
  • asynchronous requests
    • about / Asynchronous requests
    • creating / Asynchronous requests, How to do it...
  • Authentication Service / Authenticating your microservices
  • auto-scaling clusters
    • building / Building auto-scaling clusters, How to do it...
  • Auto Scale Group (ASG) / Operational notes
  • Auto Scaling Groups / Server-side load balancing
  • AWS CLI
    • reference / How to do it...

B

  • Backend For Frontend (BFF)
    • about / Design considerations, Backend for frontend
    • creating / Backend for frontend
    • designing / How to do it...
  • bespoke APIs / Backend for frontend
  • Borg paper
    • reference / Deploying your service on Kubernetes
  • bounded contexts
    • identifying / Identifying bounded contexts, How to do it...
  • business capability
    • decomposing / How to do it...

C

  • caching
    • for improving performance / Improving performance with caching, How to do it...
  • canary deployment
    • test releases / Test releases with canary deployments, How to do it…
    • about / Test releases with canary deployments
  • cascading failures
    • stopping, with Hystrix / Stopping cascading failures with Hystrix, How to do it...
  • chaos engineering
    • automating / Introducing automated chaos, How to do it...
  • chaos engineers / Introduction
  • Chaos toolkit
    • about / Introducing automated chaos
    • installing / How to do it...
    • implementing / How to do it...
  • Chef / How to do it..., Introduction
  • Chubby / Service discovery
  • circuit breakers
    • using / Using circuit breakers, How to do it...
  • client-side load balancing / Client-side load balancing, How to do it...
  • concurrency
    • modeling, with dependent futures / Modeling concurrency with dependent futures, How to do it...
  • Conduit / Using circuit breakers
  • configuration
    • securing / Secure configuration, How to do it...
  • consistent RPC
    • creating, with HTTP and JSON / Consistent RPC with HTTP and JSON, How to do it...
  • containers
    • securing / Securing containers, How to do it...
    • service, configuring / Configuring your service to run in a container, How to do it…
  • Content Delivery Network (CDN)
    • about / Fronting your services with a CDN
    • services, fronting / Fronting your services with a CDN, Gracefully degrading the user experience
    • user experience, degrading gracefully / Gracefully degrading the user experience
  • create, retrieve, update, delete (CRUD) operations / How to do it...

D

  • Dapper
    • reference / Making debugging easier with tracing
  • data migration
    • in production / Migrating data in production, How to do it...
  • debugging
    • with tracing / Making debugging easier with tracing, How to do it...
  • denial of service (DoS) attacks / Rate limiting
  • dependent futures
    • concurrency, modeling / Modeling concurrency with dependent futures, How to do it...
  • Docker
    • using, for local development / Using Docker for local development, Getting ready, How to do it...
    • reference / Getting ready
  • Docker Compose
    • about / Using Docker for local development
    • multi-container applications, executing / Running multi-container applications with Docker Compose, How to do it…
  • Domain-Driven Design (DDD) / Identifying bounded contexts

E

  • EC2 instance type
    • reference / How to do it...
  • Edgecast / Fronting your services with a CDN
  • edge proxy server
    • access, controlling to service / Operational notes, How to do it...
  • Edge Services / Introduction
  • Elastic Load Balancing (ELB) / Operational notes, Server-side load balancing
  • event-driven microservices
    • building / Building event-driven microservices, How to do it...
    • message producer / Message producer
    • message consumer / Message consumer
  • exponential backoff
    • requests, retrying / Retrying requests with exponential backoff, How to do it...

F

  • Fastly / Fronting your services with a CDN
  • Fast Purge API / Fronting your services with a CDN
  • fault tolerance
    • verifying, with Gameday exercise / Verifying fault tolerance with Gameday exercises, How to do it...
  • Feign / Finding services
  • Finagle Scala framework / How to do it...

G

  • Gameday exercise
    • fault tolerance, verifying / Verifying fault tolerance with Gameday exercises, How to do it...
    • prerequisites / Prerequisites
    • template / A template for Gameday exercises
  • Gatling
    • about / Load testing microservices with Gatling
    • microservices, load testing / Load testing microservices with Gatling, How to do it...
    • reference / How to do it...
  • Graphite
    • metrics, collecting / Collecting metrics with StatsD and Graphite, How to do it...
    • about / Collecting metrics with StatsD and Graphite
  • gRPC
    • using / Using gRPC, How to do it...

H

  • HAProxy / Server-side load balancing
  • HashiCorp
    • reference / How to do it...
  • HomeBrew
    • about / How to do it...
    • reference / How to do it...
  • HTTP
    • and JSON, used for creating consistent RPC / Consistent RPC with HTTP and JSON, How to do it...
  • Hystrix
    • cascading failures, stopping / Stopping cascading failures with Hystrix, How to do it...

I

  • immutable infrastructure / Introduction
  • Infrastructure as Code / Infrastructure as Code, How to do it...
  • interface definition language (IDL) / Using Thrift
  • Inverse Conway Maneuver / Organizing your team

J

  • Jaeger
    • reference / Making debugging easier with tracing
  • Java Archive (JAR) file / Configuring your service to run in a container
  • Java Persistence API (JPA) / How to do it...
  • Java Virtual Machine (JVM) / Configuring your service to run in a container
  • JSON
    • and HTTP, used for creating consistent RPC / Consistent RPC with HTTP and JSON, How to do it...
  • JSON Web Tokens (JWT) / Authenticating your microservices

K

  • Kubernetes
    • service, deploying / Deploying your service on Kubernetes, How to do it…

L

  • Linkerd / Using service mesh for shared concerns, Using circuit breakers
  • load testing, microservices
    • with Vegeta / Load testing microservices with Vegeta, How to do it...
    • with Gatling / Load testing microservices with Gatling, How to do it...
  • Log4j
    • reference / Structured JSON logging
  • Logback
    • reference / Structured JSON logging
  • logs
    • securing / Secure logging

M

  • Mean Time To Detect (MTTD) / Alerting us when something goes wrong
  • messages / Building event-driven microservices
  • metrics
    • about / Collecting metrics with StatsD and Graphite
    • collecting, with StatsD / Collecting metrics with StatsD and Graphite, How to do it...
    • collecting, with Graphite / Collecting metrics with StatsD and Graphite, How to do it...
    • collecting, with Prometheus / Collecting metrics with Prometheus, How to do it...
  • microservices
    • team organization / Organizing your team, How to do it…, Discussion
    • authenticating / Authenticating your microservices, How to do it...
    • load testing, with Vegeta / Load testing microservices with Vegeta, How to do it...
    • load testing, with Gatling / Load testing microservices with Gatling, How to do it...
  • Minikube / Deploying your service on Kubernetes
  • monolith
    • refactoring / Refactoring your monolith, How to do it...
    • evolving, into services / Evolving your monolith into services, How to do it...
  • multi-container applications
    • executing, with Docker Compose / Running multi-container applications with Docker Compose, How to do it…

N

  • Network Time Protocol (NTP) / Introducing automated chaos
  • NGINX
    • installing / How to do it...

O

  • object-oriented design (OOD) / Decomposing by business capability
  • object-relational mapping (ORM) / Migrating data in production
  • observability / Introduction
  • OpenTracing
    • reference / Making debugging easier with tracing
  • Open Web Application Security Project
    • reference / How to do it...
  • OWASP
    • reference / Introduction

P

  • PagerDuty / Alerting us when something goes wrong
  • points of presence (PoPs) / Fronting your services with a CDN
  • Prometheus
    • about / Collecting metrics with Prometheus
    • metrics, collecting / How to do it...
    • reference / How to do it...
  • protocol buffers / Using gRPC
  • Puppet / How to do it..., Introduction

R

  • rate limiting
    • about / Rate limiting
    • implementing / Rate limiting, How to do it...
  • requests
    • routing, to services / Routing requests to services, How to do it...
    • routing, to services with API Gateways / Using API Gateways for routing requests to services, How to do it...
    • retrying, with exponential backoff / Retrying requests with exponential backoff, How to do it...
  • Ruby on Rails / How to do it...

S

  • server-side load balancing / Server-side load balancing
  • service-to-service communication
    • about / Service-to-service communication
    • demonstrating / Service-to-service communication, How to do it...
  • service discovery
    • about / Service discovery
    • service registry, registering with / Registering with the service registry
    • services, searching / Finding services
  • Service Mesh
    • used, for shared concerns / Using service mesh for shared concerns, How to do it...
  • services
    • monolith, evolving / Evolving your monolith into services, How to do it...
    • requests, routing / Routing requests to services, How to do it...
    • access, controlling with edge proxy server / Controlling access to your service with an edge proxy server, Operational notes, How to do it...
    • extending, with sidecars / Extending your services with sidecars, How to do it...
    • requests, routing with API Gateways / Using API Gateways for routing requests to services, Design considerations, How to do it...
    • configuring, for container execution / Configuring your service to run in a container, How to do it…
    • deploying, on Kubernetes / Deploying your service on Kubernetes, How to do it…
  • Single Responsibility Principle (SRP) / Decomposing by business capability
  • Site Reliability Engineers (SRE) / Introduction
  • SoundCloud / Collecting metrics with Prometheus
  • StatsD
    • about / Collecting metrics with StatsD and Graphite
    • metrics, collecting / Collecting metrics with StatsD and Graphite, How to do it...
  • structured JSON
    • logging / Structured JSON logging, How to do it...

T

  • team organization
    • for embracing microservices / Organizing your team, How to do it…, Discussion
    • discussion / Discussion
  • Terraform / Infrastructure as Code
  • test suite
    • evolving / Evolving your test suite, How to do it...
  • topics / Building event-driven microservices
  • tracing
    • for debugging / Making debugging easier with tracing, How to do it...
  • twelve-factor methodology
    • about / Introduction
    • reference / Introduction

V

  • Varnish / Fronting your services with a CDN
  • Varnish Configuration Language (VCL) / Fronting your services with a CDN
  • Vegeta
    • microservices, load testing / Load testing microservices with Vegeta, How to do it...
    • about / Load testing microservices with Vegeta
  • Virtual Private Cloud (VPC) / Operational notes

Z

  • Zipkin
    • reference / Making debugging easier with tracing
  • Zuul / Routing requests to services, Controlling access to your service with an edge proxy server
lock icon The rest of the chapter is locked
arrow left Previous Section
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at £13.99/month. Cancel anytime
Visually different images