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