Backend Development 16 min read

Scaling NetEase Kaola’s Backend: Dubbo‑Driven Architecture, Governance & Monitoring

This article details NetEase Kaola’s journey from a monolithic Java backend to a micro‑service architecture powered by Dubbo, covering service decomposition, circuit breaking, rate limiting, comprehensive monitoring, API gateway, multi‑language support, registration‑center redesign, and future plans for dual‑data‑center deployment and service‑mesh adoption.

Java Backend Technology
Java Backend Technology
Java Backend Technology
Scaling NetEase Kaola’s Backend: Dubbo‑Driven Architecture, Governance & Monitoring

Kaola Architecture Evolution

When Kaola launched in early 2015, all functions such as product detail pages and shopping cart were tightly coupled in a single online project, which was efficient for a small team but later caused low development efficiency and high deployment cost as the business grew.

To address these issues, Kaola began splitting the monolith into distributed services, creating separate centers for products, users, and orders, and gradually refined service granularity.

Service‑Oriented Practices

Dubbo was chosen as the core micro‑service framework to handle service definition, registration, discovery, routing, and governance. Kaola added circuit breaking (via Hystrix), rate limiting (custom NFC framework built on Dubbo filters), and integrated these controls into a monitoring platform.

Circuit Breaking

Remote calls introduce latency and failures; circuit breakers prevent cascading failures by short‑circuiting calls when a provider becomes unstable, with automatic recovery once health is restored.

Rate Limiting

Kaola’s NFC framework enforces concurrency and QPS limits on Dubbo services and URLs, reporting metrics to a real‑time monitoring dashboard.

Rate limiting dashboard
Rate limiting dashboard

Monitoring Enhancements

Monitoring now includes four dimensions: logs, metrics, tracing, and health checks. Service metrics (CPU, latency, QPS) are collected, while a custom trace platform captures Dubbo call chains for latency and dependency analysis. Health checks verify readiness of dependencies before registration.

Service monitoring UI
Service monitoring UI

API Gateway

Kaola built a custom API gateway that forwards external traffic to Dubbo services, providing routing, flow control, and logging. The gateway uses Dubbo’s generic invocation, which was optimized to outperform standard calls.

API gateway architecture
API gateway architecture

Multi‑Language Support

To enable Node.js clients, Kaola exposed Dubbo services via a JSON‑RPC protocol alongside the native Dubbo protocol, handling protocol selection and serialization compatibility.

Multi‑language integration
Multi‑language integration

Registration Center Bottleneck and Solution

With over 4,000 Dubbo instances and more than a million ZooKeeper nodes, Kaola faced write‑performance limits and “thundering herd” effects during service publishing. The team designed a new registration center that stores only essential IP/port data in ZooKeeper, off‑loads metadata to Redis, and plans to adopt Nacos for future stability.

Registration center redesign
Registration center redesign

Future Plans

Kaola is constructing a second data center for active‑active deployment, enhancing Dubbo routing to prefer same‑site instances, and exploring containerization, DevOps pipelines, and Service Mesh to further decouple services and support multi‑language ecosystems.

Dual‑data‑center architecture
Dual‑data‑center architecture
monitoringMicroservicesdubboservice governanceJava Backendregistration center
Java Backend Technology
Written by

Java Backend Technology

Focus on Java-related technologies: SSM, Spring ecosystem, microservices, MySQL, MyCat, clustering, distributed systems, middleware, Linux, networking, multithreading. Occasionally cover DevOps tools like Jenkins, Nexus, Docker, and ELK. Also share technical insights from time to time, committed to Java full-stack development!

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.