A team of developers from Microsoft Research has unveiled Garnet, a cross-platform, open-source, next-generation fast cache project designed to accelerate applications and services. The project’s source code is published on GitHub under the MIT License.
Microsoft Research explained that right from the start, the solution offers a complete and extensible API, support for various types of memory and multi-level storage, a pluggable network layer with ultra-low latency, stable operation, and good performance on bare metal.
Additional top benefits of the Garnet project, as assured by Microsoft Research, include:
- Compatibility with Existing Redis Clients: Garnet leverages the widely used RESP protocol as its foundation, enabling seamless integration with unmodified Redis clients available in most programming languages today.
- Enhanced Scalability and Throughput: Garnet offers superior scalability and throughput by supporting multiple client connections and utilizing small packets. This results in cost savings, particularly for resource-intensive applications and services.
- Improved Client Latency: Garnet demonstrates better client latency at the 99th and 99.9th percentile, which is crucial for real-world scenarios where consistent performance is essential.
- Cross-Platform and Extensible: Built on the latest .NET technology, Garnet is cross-platform and extensible. It is designed to be easy to develop and evolve without sacrificing performance. The project utilizes the .NET library ecosystem to enhance APIs with open-source optimizations. With careful utilization of .NET components, Garnet delivers high performance on both Linux and Windows platforms.
The Garnet project is the culmination of years of effort by Microsoft Research. Developers clarified that this solution is a derivative of another project, FASTER, which was completed in 2018. FASTER was an embedded key/value library intended to showcase its ability to achieve superior performance compared to existing systems. Amid the challenges posed by the 2021 pandemic, Microsoft Research opted to leverage the technology to address the genuine needs of the company. Consequently, the project was refined and christened Garnet.
Microsoft has already implemented Garnet across its IT infrastructure, spanning its Windows & Web Experiences, Azure Resource Manager, and Azure Resource Graph platforms. As the project is open source, third-party developers can leverage it to enhance the performance of their own applications and services. Microsoft Research intends to continually enhance Garnet by introducing new API calls and features in the future. Additionally, they plan to foster further collaboration with developers within the open-source community in this domain.