Product Overview
# Preface
This document provides an introduction to Apusic In-Memory Data Cache (AMDC) V2.0.4, helping users quickly understand the product's features, technical characteristics, and typical application scenarios.
# Target Audience
This document is intended for IT information business managers, R&D managers, software project managers, software architects, and operations engineers.
# Related Documentation
For more information about AMDC V2.0.4, please refer to the following AMDC V2.0.4 product manual documentation set:
| No. | Document | Description |
|---|---|---|
| 1 | Apusic In-Memory Data Cache V2.0.4 Quick Start Guide | A brief introduction on how to quickly get started with AMDC. |
| 2 | Apusic In-Memory Data Cache V2.0.4 Installation Guide | Detailed introduction on how to install AMDC on various operating systems, AMDC service start/stop operations, and product registration process. |
| 3 | Apusic In-Memory Data Cache V2.0.4 Core User Manual | Detailed introduction on how to use, configure, and manage AMDC features and supporting tools. |
| 4 | Apusic In-Memory Data Cache V2.0.4 Console User Manual | Detailed instructions on using and operating AMDC console features. |
| 5 | Apusic In-Memory Data Cache V2.0.4 Development Guide | Detailed instructions for developing AMDC client applications using various programming languages. |
| 6 | Apusic In-Memory Data Cache V2.0.4 Migration Guide | Detailed instructions for migrating AMDC from historical versions to V2.0.4, as well as migrating from Redis to AMDC. |
| 7 | Apusic In-Memory Data Cache V2.0.4 Operations Guide | Detailed instructions for AMDC monitoring, operations, security hardening, and other operational procedures. |
| 8 | Apusic In-Memory Data Cache V2.0.4 Performance Tuning Guide | Detailed instructions for AMDC performance tuning. |
# Technical Support
AMDC products provide comprehensive technical support services. You can obtain technical support through the following channels:
Website: www.apusic.com
Phone: 400-855-5800
Email: support@apusic.com
Kingdee Cloud Community: https://vip.kingdee.com/?productId=73&productLineId=14&lang=zh-CN
When requesting technical support, please provide the following information:
Your name
Company information and contact details
Operating system and version
Product version number
Detailed information including logs, screenshots, etc. of any exceptions or errors
# Product Introduction
Apusic In-Memory Data Cache Software (Apusic In-Memory Data Cache, abbreviated as AMDC) is an enterprise-level high-performance distributed cache middleware that is 100% compatible with Redis protocol and development ecosystem, enabling seamless migration without modifying existing business applications. AMDC features core capabilities including high-performance millisecond-level response, high availability with multi-replica fault tolerance, high scalability with elastic expansion, and refined web-based visual management, providing secure and reliable high-frequency data access support for critical business in high-concurrency and distributed scenarios, reducing database pressure and improving overall system throughput.
AMDC is built on Kingdee Apusic's years of middleware technology accumulation, with fully autonomous and controllable underlying architecture to upper-level functions, meeting the localization replacement requirements in information technology innovation environments, while providing enterprise-level technical support and service guarantees.
# Core Features
# High-Performance Cache Engine
Ultra-high throughput: Multi-threaded network I/O architecture and lock-free concurrency model, single-node throughput up to 140,000 QPS
Microsecond-level response: Pure memory operations combined with efficient data structures, achieving microsecond-level operation response
Rich data structures: Complete support for Redis core data structures including String, Hash, List, Set, Sorted Set, Geo, HyperLogLog, Stream, etc.
Flexible cache policies: Supports multiple memory eviction policies and key expiration mechanisms such as LRU, LFU, TTL, etc.
# High Availability Architecture
Master-slave replication: Implements data redundancy and read-write separation, improving system availability
Sentinel mode: Provides high availability capabilities including automatic fault detection, failover, and configuration propagation
Cluster mode: Supports data sharding storage, elastic scaling, automatic failover, meeting large-scale business requirements
Dual persistence mechanism: Supports both RDB snapshot and AOF log persistence methods, can be used individually or in combination, balancing data persistence efficiency and integrity
# Security Enhancement
Access control: Supports password authentication and ACL fine-grained permission control
Transport encryption: Supports SSL/TLS mutual authentication
Audit logging: Records complete operation logs to meet compliance requirements
Command security: Supports renaming or disabling dangerous commands
# Operations Management
Visual management: Provides Web console, supports centralized unified operations management for multi-version cache core instances
Cluster management: Provides complete toolchain for cluster creation, inspection, repair, and scaling
Performance monitoring: Real-time monitoring of key metrics such as QPS, response time, memory usage, etc.
Slow query analysis: Automatically records and analyzes slow query commands to assist performance tuning
Observability: Built-in Prometheus support, providing rich runtime metrics and standard Grafana Dashboard
# Development Support
Protocol compatibility: Fully compatible with RESP2/RESP3 protocols, supports seamless integration with Redis clients
Multi-language support: Compatible with mainstream client libraries such as Jedis, Lettuce, redis-py, go-redis, etc.
Lua scripting: Built-in Lua interpreter, supports atomic execution of complex logic
Complete toolchain: Provides CLI tools, benchmark tools, file repair tools, configuration conversion tools, etc.
# Technical Features
# High Performance
- Network layer multi-threaded concurrent architecture
- Single-threaded command execution ensures atomicity
- Memory-optimized data structure design
- Zero-copy technology reduces memory overhead
# High Reliability
- Multi-replica data redundancy
- Decentralized cluster architecture
- Automatic fault detection and switching
- Data consistency guarantee mechanism
# High Security
- ACL fine-grained permission control
- SSL/TLS encrypted transmission
# High Compatibility
- Complete Redis protocol compatibility
- Mainstream programming language client support
- Standardized API interfaces
- Rich tool ecosystem
# Application Scenarios
# Centralized Session Storage for Application Servers
Provides unified Session storage capabilities for application server (such as Tomcat, AAS, etc.) cluster deployments, solving the problem of isolated Session data across cluster nodes and session state loss when users access across nodes, achieving global session sharing and unified management.
# Hot Data Caching
Serves as a "front-end buffer layer" for databases, storing frequently accessed hot data in applications, reducing high-frequency query pressure on databases, and preventing database overload due to high concurrent requests. Shortens data access path, reducing response latency from millisecond-level at the database to microsecond-level, improving overall system throughput and user experience.
# Distributed Lock
Provides cross-service, cross-node mutually exclusive access control for concurrent operations on shared resources in distributed architectures. By using distributed cache, concurrent conflicts in distributed environments can be effectively avoided, ensuring that the same resource is operated by only one service instance at the same time, guaranteeing data consistency.
# Lightweight Message Queue
Can be used as a message queue to implement asynchronous communication between different services. By decoupling synchronous dependencies between services, it prevents the entire link from being blocked due to a service failure. Supports peak shaving and valley filling, buffering message peaks in high-concurrency scenarios to improve system resilience and stability.
# Counter and Interface Rate Limiting
Based on atomic operations, achieves precise counting of target objects (such as page views, clicks, login counts), or limits request frequency for interfaces and users. Meets real-time counting requirements in high-concurrency scenarios (ensuring accurate counting without concurrent errors); prevents interfaces from being overwhelmed by malicious requests or traffic spikes, protecting backend service resources and ensuring system availability.
# Time-Limited Business
Implements various time-limited business logic through TTL mechanism, completing operations within specified time or automatically expiring. Suitable for scenarios such as verification codes, coupons, limited-time activities, etc.