Backend Development 28 min read

Architectural Guide: Microservices, Service Mesh, Messaging, and Observability

This article presents a comprehensive architectural roadmap covering microservice fundamentals, design principles, service discovery, API protocols, gateway patterns, observability pillars, service mesh options, and a detailed comparison of modern message‑queue technologies, offering practical guidance for backend system design and selection.

Architecture Digest
Architecture Digest
Architecture Digest
Architectural Guide: Microservices, Service Mesh, Messaging, and Observability

The author outlines an "Architecture Map" that reflects a personal journey from point‑to‑plane‑to‑graph, focusing on backend technologies, cloud‑native services, and third‑party solutions, emphasizing that architecture is a series of decisions constrained by team experience, cost, resources, schedule, and business stage.

Structure : The content is divided into three parts – the upper part discusses microservices and common message queues, the middle part covers databases, distributed consistency/locks/caching/scheduling, and streaming, while the lower part shares DevOps, project management, and team‑building experiences.

Microservices : Defined as a style that builds complex applications from small, language‑independent building blocks. The article explains the benefits of service decomposition, the role of gateways (access and business), and key design concepts such as Conway’s Law and Domain‑Driven Design (DDD) for service boundaries.

Gateway : Described as the unified entry point handling traffic, security, and aggregation. It distinguishes between access gateways (DNS, load balancers, SSL, IPv6) and business gateways (authentication, rate limiting, circuit breaking, retries, plugins, BFF). Various open‑source and commercial gateway frameworks (Kong, APISIX, Spring Cloud Gateway, gRPC‑Gateway, etc.) are mentioned.

Communication Protocols : Compares HTTP REST (API style) with RPC (Dubbo, Motan, Thrift, gRPC), highlighting trade‑offs in API clarity, transmission efficiency, and fault tolerance. The choice depends on existing infrastructure and specific use cases.

Service Registration & Discovery : Explains server‑side (load balancer + DNS) versus client‑side (service registry like etcd, ZooKeeper, Consul) models, discussing pros and cons of each approach.

Configuration Center : Covers key‑value stores (etcd, ZooKeeper, Consul) and cloud‑native ConfigMap/Secret usage, as well as higher‑level platforms (Nacos, Apollo) that provide UI, permission management, and multi‑environment support.

Observability : Introduces the three pillars – tracing, logging, and metrics – and their importance in cloud‑native environments. Includes a brief on OpenTracing, OpenCensus, OpenTelemetry, and popular implementations (Jaeger, Zipkin, SkyWalking). The tracing diagram is preserved below:

[Span A]  ←←←(the root span)
        |
 +------+------+ 
 |          |
[Span B]   [Span C] ←←←(Span C is child of Span A)
 |          |
[Span D]   +---+-------+
            |           |
          [Span E]   [Span F] >>> [Span G] >>> [Span H]
                              ^
                              ^
                              ^
               (Span G follows Span F)

Logging : Lists RFC 5424 log levels and discusses log collection strategies (Filebeat, Logstash, Fluentd) and storage in Elasticsearch/Kibana, as well as the role of logs in big‑data analytics.

Metrics : Describes resource and business metrics, and explains Prometheus data types (Counter, Gauge, Histogram, Summary) with example queries.

Service Mesh : Defines service mesh as a sidecar‑based layer handling service‑to‑service communication, traffic control, security, and observability. Highlights Istio, Linkerd, and Conduit as popular options, noting the need for high availability of sidecars.

Message Queues : Provides an overview of MQ concepts, then compares Redis, RabbitMQ, Kafka, RocketMQ, and Pulsar across HA, throughput, feature richness, duplicate consumption, and ordering guarantees. Includes diagrams and notes on Pulsar’s compute‑storage separation architecture.

Overall, the article serves as a practical reference for selecting and integrating backend components in modern cloud‑native systems.

Cloud Nativebackend architecturemicroservicesObservabilityMessage Queueservice mesh
Architecture Digest
Written by

Architecture Digest

Focusing on Java backend development, covering application architecture from top-tier internet companies (high availability, high performance, high stability), big data, machine learning, Java architecture, and other popular fields.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.