How to Build a Scalable Overseas Logistics Tracking System with Java, Spring, and Docker
This article explains the business need, challenges, and detailed backend architecture—including business, technical, and deployment designs—of a high‑concurrency, high‑availability overseas logistics tracking system built with Java, Spring, ActiveMQ, Redis, MySQL, and Docker.
Logistics Trajectory Overview
Logistics trajectory records the movement of a parcel through every node in the logistics network, such as transportation, sorting, transfer, and delivery times. A trajectory system supports this business and is crucial for improving user experience and providing decision‑makers with valuable feedback.
Business Benefits
1. Enhances user experience by allowing customers to query full‑process status, estimate arrival time, and plan receipt.
2. Supplies decision‑makers with statistics like on‑time delivery rate, enabling early problem detection, rapid adjustments, service quality improvement, and competitive advantage.
Current Situation and Motivation
Historically, ZTO International uses two separate trajectory systems—Shenzhen and Shanghai—resulting in duplicated functionality, required compatibility, and increased development, operation, and maintenance costs. To eliminate these burdens and align with the “from large to strong” strategy, a new unified trajectory system is being developed.
Overseas Trajectory Business Characteristics
The system serves many users (warehouse, import/export, store systems) and must handle high read and write concurrency, ensure high availability, and enable smooth migration from legacy systems.
Domestic parcels destined for overseas customers pass through three stages: “head” (origin to origin country customs), “trunk” (origin customs to destination country customs), and “delivery” (destination customs to recipient). Multiple carriers and time‑zone differences increase data volume and complexity.
System Architecture
Business Architecture
The business architecture defines system boundaries, models, and interactions with other systems. Core business functions include adding trajectory information, querying it, and supplementing missing data. To ensure a smooth transition, the new system runs in parallel with the legacy system for six months, receiving data from both before the old system is decommissioned.
Technical Architecture
The new system is developed in Java using the Spring framework. To smooth write‑side spikes, ActiveMQ is employed for message queuing. Redis caches hot data for fast read access. MySQL stores massive data, with daily sharding for recent six‑month hot data and yearly archiving for older data.
Deployment Architecture
Docker containers are used for deployment, providing continuous integration, version control, portability, isolation, and security, thus supporting dynamic scaling and high availability.
Conclusion
The architecture follows the “XYZ scaling cube”, addressing high concurrency, massive data, high availability, dynamic expansion, and maintainability, thereby effectively supporting ZTO’s overseas logistics business growth.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Zhongtong Tech
Integrating industry and information for digital efficiency, advancing Zhongtong Express's high-quality development through digitalization. This is the public channel of Zhongtong's tech team, delivering internal tech insights, product news, job openings, and event updates. Stay tuned!
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
