Alibaba Cloud ApsaraCache — On the Road to Open Source
Recently the Linux Foundation hosted LC3 (LinuxCon + ContainerCon + CloudOpen) — a global open source event — was held at the China National Convention Center in Beijing. The conference attracted thousands of attendees from around the world. The Alibaba Cloud Redis team was also invited to participate in this event. At the event, the team won the China Redis User Group (CRUG’s) award for being one of the most influential members of the open source community.
The Alibaba Cloud Redis team has actively participated in the open source community and are currently maintaining an open-source branch of ApsaraCache. Many of the team members actively participated in the construction of the Redis community. Currently, more than 30 patches and features have been incorporated into Redis’s trunk and branches.
The Alibaba Cloud Redis team shared stories about AsparaCache’s journey down the open source road and how it improved productization of Alibaba Cloud Redis in the open source community. At the same time, the China Redis User Group awarded the Alibaba Cloud Redis team the Open Source Community Outstanding Contribution Award.
What Is ApsaraCache
ApsaraCache is the Redis branch which is used by ApsaraDB for Redis. At the Computing Conference held last year in Hangzhou on October 14, Alibaba Cloud announced the ApsaraCache project’s official open source launch. This announcement was also witnessed by Salvatore, the founder of Redis and a renowned member.
ApsaraCache has been tested with more than 10,000 production instances over five years of optimization. Compared with Redis, ApsaraCache has an outstanding characteristic in its relevance with user cases and non-relevance with data size. Besides, it also demonstrates superior performance in transient connections, recovery in full memory and time-consuming command execution among other user cases.
It is worth noting that ApsaraCache not only supports the Memcached protocol, but also reuses the Redis architecture to inject new vigor to Memcache. This is evident by its support for items such as persistence, the master-slave structure for disaster tolerance, backup restoration, slow log auditing, and information statistics.
To be specific, ApsaraCache also has multiple technical characteristics and advantages.
Here is a list of advantages of ApsaraCache:
- Its in-depth reinforcement for disaster tolerance means it is capable of restructuring the kernel synchronization mechanism to ensure full data synchronization performance solving the problem wherein the native vernal mechanism may suffer disconnections in replication operations in a weak network.
- It is compatible with the Memcached protocol. Its support of dual-replica Memcached enables data persistence and more reliable Memcached services.
- The performance in transient connection user cases has been improved by more than 30%. This produces significant performance improvements for applications with many PHP transient connections.
- The AOF enhancement can avoid the bottleneck on the host stability problem caused by frequent AOF rewrites and enable second-level recovery by time points.
- Its unique hot upgrade mechanism makes it possible for it to complete an instance’s hot update within three milliseconds thus removing frequent vernal upgrades’ impact to users.
- The unique instance health detection mechanism checks whether or not the process is healthy by adding a separate probe port thread, and detects the host hardware. If the host is abnormal, the Master/slave switchover is performed in advance.
Real-World Applications of Redis and ApsaraCache
Based on the ApsaraCache kernel, Alibaba Cloud provides a wide range of products for customers on the cloud. For test environment instances, users can choose a single-node instance to minimize cost. For enterprise applications, services can use the stand-alone master-slave version to meet scenarios where the content capacity is lower than 64 GB and the page view QPS is less than 100,000. During peak usage periods, the instance can be upgraded to the cluster model so as to support million-level access and TB-level memory.
For Internet customers, users can use read and write, separate the read traffic of the extended service read/write splitting to expand the read traffic for the service, and maintain tens of millions of users’ request latencies.
In terms of disaster recovery, users can select Redis instances with different disaster recovery specifications as needed. Users can set up master and slave instances in the same data center, or deploy instances in the same city but different zones, or have multiple remote active standbys.
For financial or global customers, users can use the remote multiple active standby to construct a global Redis cache.
Alibaba Cloud ApsaraDB for Redis is a key value database service that offers in-memory caching and high-speed access to applications hosted on the cloud. As a Redis protocol compatible tool, ApsaraDB for Redis offers exceptional read-write capabilities and ensures data persistence by using memory and hard disk storage.
Alibaba Cloud is constantly contributing towards the open source community. To learn more about Alibaba Cloud’s and Alibaba Group’s open source initiatives, check out these 12 Open Source Projects by Alibaba.