Market is an application store backend service developed in Go, providing core functionalities such as application management, task scheduling, and payment processing.
The Market system consists of two core projects that work together to provide a complete application store service:
- Market Project: Core application store service, responsible for application information management, task processing, payment processing, and API services
- Dynamic Chart Repository Project: Helm Chart dynamic repository, responsible for Chart rendering, image analysis, and state management
The two projects interact through API interfaces, including:
- Application Rendering: Market synchronizes application data to Chart Repository for rendering processing
- Data Synchronization: Market retrieves state changes and application information from Chart Repository
- Configuration Management: Market shares market source configuration with Chart Repository
- Status Monitoring: Market retrieves runtime status information from Chart Repository
π Market System Architecture | δΈζη
The Market project adopts a layered architecture design, mainly including the following layers:
- API Service Layer: Provides RESTful API services, supporting both v1 and v2 interface versions
- Core Business Modules: Including core functional modules such as application management, task management, payment management, and runtime status
- Data Storage Layer: Uses Redis for persistent storage, with in-memory cache providing high-performance data access
- Data Processing Layer: Includes data synchronizer (Syncer), data processor (Hydrator), and status monitor (DataWatcher)
The system achieves high cohesion and low coupling through modular design, with each module working together to provide complete application store service capabilities.
π Market Project Internal Architecture | δΈζη
Provides complete application lifecycle management functionality, including application installation, uninstallation, upgrade, cloning, and other operations.
- Application installation, uninstallation, upgrade, cloning
- Application information query and synchronization
- Application configuration management
- Application status monitoring
- Application version history query
- Application lifecycle control (resume, stop, open)
π Market Project Internal Architecture | δΈζη
π API Reference Documentation | δΈζη
π Other Features | δΈζη
Provides application information query and synchronization functionality, supporting batch queries and on-demand retrieval.
- Application information query (supports batch queries)
- Application information synchronization
π Market Project Internal Architecture | δΈζη
π API Reference Documentation | δΈζη
Provides complete application payment process management, including payment state machine, payment polling, and frontend payment event handling.
- Payment state machine management
- Payment polling mechanism
- Frontend payment event handling
- Payment receipt management
- Developer verification and authorization
π Payment Module Documentation | δΈζη
π API Reference Documentation | δΈζη
Provides efficient frontend data synchronization mechanism, supporting incremental updates and on-demand updates.
- Hash-based data change detection
- Incremental data synchronization
- On-demand data retrieval
- Data cache management
π Incremental Update System Documentation | δΈζη
π API Reference Documentation | δΈζη
Ensures consistency between cached application status and actual runtime status, automatically detecting and correcting status differences.
- Status consistency checking
- Automatic status correction
- Status difference detection
- Correction event recording
π Status Correction Module Documentation | δΈζη
Provides asynchronous task scheduling and execution mechanism, supporting task status tracking, cancellation, and retry.
- Asynchronous task scheduling and execution
- Task status tracking
- Task cancellation and retry mechanism
- Task progress query
π Market Project Internal Architecture | δΈζη
π API Reference Documentation | δΈζη
Provides system configuration management functionality, including market source configuration, Redis configuration, etc.
- Market source configuration management
- Redis configuration management
- System environment variable monitoring
- Configuration persistence
π API Reference Documentation | δΈζη
π Other Features | δΈζη
Provides operation history recording and system event tracking functionality, supporting history queries and filtering.
- Operation history recording
- System event tracking
- History query and filtering
- Automatic cleanup mechanism
π History Module Documentation | δΈζη
π API Reference Documentation | δΈζη
Provides system runtime status collection and monitoring functionality, including application status, task status, and system component status.
- Application runtime status collection
- Task execution status monitoring
- System component status monitoring
- Real-time status query
π Runtime Module Documentation | δΈζη
π API Reference Documentation | δΈζη
Complete API interface reference documentation, including detailed descriptions of all endpoints, request parameters, and response formats.
π API Reference Documentation | δΈζη