engineering posts

Redis and Dragonfly Architecture Comparison

Redis and Dragonfly Architecture Comparison

This blog post provides a comparison of Redis and Dragonfly architectures, highlighting Dragonfly's advanced solutions for overcoming Redis's limitations in performance, scalability, and memory efficiency.

Dragonfly's New Sorted Set Implementation

Dragonfly's New Sorted Set Implementation

This blog post delves into Dragonfly's innovative approach to enhancing the sorted set data type, showcasing a new B+ tree implementation that significantly reduces memory usage by up to 40% and improves performance.

Using Dragonfly as a Table Engine for ClickHouse

Using Dragonfly as a Table Engine for ClickHouse

In this blog post, we evaluate using Dragonfly as a ClickHouse table engine, highlighting the seamless integration and exploring both benefits and practical considerations.

Relay with Dragonfly: Towards the Next-Gen Caching Infrastructure

Relay with Dragonfly: Towards the Next-Gen Caching Infrastructure

Integrating Dragonfly with Relay enhances PHP applications by significantly boosting caching performance, showcasing scalability, high throughput, and reduced latency for efficient next-gen caching infrastructure.

Measuring Cardinality in the Millions and Billions with Dragonfly

Measuring Cardinality in the Millions and Billions with Dragonfly

This blog post explores using Dragonfly for measuring cardinality with precision at massive scales. Focusing on `Set` for exact counts and `HyperLogLog` for accurate estimations.

Scaling Redis without Clustering

Scaling Redis without Clustering

This blog explores scaling Redis, highlighting the complexities of Redis Cluster and presenting Dragonfly as a simpler, efficient alternative. It offers insights into vertical scaling, operational ease, and Dragonfly's ability to handle large-scale workloads on a single node.

Running and Optimizing Sidekiq Workloads with Dragonfly

Running and Optimizing Sidekiq Workloads with Dragonfly

In this blog post, we dive into the journey of running and optimizing Sidekiq workloads with Dragonfly, demonstrating Dragonfly's compatibility and efficiency. This initiative also illustrates our dedication to growing and adapting Dragonfly within the open-source community.

2024 New Year, New Number: New Benchmarks Show Dragonfly Achieves 6.43 Million Ops/Sec on an AWS Graviton3E Instance

2024 New Year, New Number: New Benchmarks Show Dragonfly Achieves 6.43 Million Ops/Sec on an AWS Graviton3E Instance

With the advancements of cutting-edge hardware, Dragonfly reaches 6.43 million ops/sec on a single `c7gn.16xlarge` instance.

Scaling Real-Time Leaderboards with Dragonfly

Scaling Real-Time Leaderboards with Dragonfly

Explore how to build dynamic, real-time leaderboards using Dragonfly and PostgreSQL. Learn to effectively manage user scores and data for high-performance, scalable leaderboard systems for gamification features.

Using Laravel with Dragonfly

Using Laravel with Dragonfly

Explore the integration of Dragonfly with Laravel for enhanced performance. This blog post delves into using Dragonfly as a cache and queue driver, highlighting its compatibility, low memory usage, efficient snapshotting, and advanced queue management features.

What You Need to Know About ElastiCache Serverless

What You Need to Know About ElastiCache Serverless

In the blog post, the emerging trend of serverless solutions is discussed, focusing on AWS ElastiCache Serverless. While acknowledging its innovative approach, our calculation suggests that the pricing model may not be practical for medium to large workloads.

Announcing Dragonfly Search

Announcing Dragonfly Search

We are thrilled to announce Dragonfly Search, enabling both vector search and faceted search in our robust and performant in-memory data store.

How We Optimized Dragonfly to Get 30x Throughput with BullMQ

How We Optimized Dragonfly to Get 30x Throughput with BullMQ

In this blog post, we navigate the journey of optimizing Dragonfly for BullMQ, achieving an exceptional 30x throughput increase. This endeavor highlights our deep commitment to the community and demonstrates our dedication to expanding and adapting Dragonfly to the open-source ecosystem.

Building E-Commerce Applications with Dragonfly

Building E-Commerce Applications with Dragonfly

In this blog post, we discover how Dragonfly boosts e-commerce platforms with efficient caching, personalized content, and managing high-traffic events. Learn about Dragonfly's capabilities for ensuring smooth operations during peak times.

Announcing Dragonfly Kubernetes Operator General Availability

Announcing Dragonfly Kubernetes Operator General Availability

We are thrilled to announce the general availability of the Dragonfly Kubernetes Operator.

Building a Real-Time Ad Server with Dragonfly

Building a Real-Time Ad Server with Dragonfly

In this blog post, we build a real-time ad server application using Bun, ElysiaJS, and Dragonfly, showcasing seamless integration and exceptional developer experience. Dive into hands-on examples and enhance your understanding of these cutting-edge technologies.

Running BullMQ with Dragonfly

Running BullMQ with Dragonfly

In this post, we explore the seamless integration of Dragonfly as a drop-in replacement for Redis as the backing in-memory store of BullMQ, a robust background job processing library for Node.js.

Developing with Dragonfly: Solve Caching Problems

Developing with Dragonfly: Solve Caching Problems

In the Developing with Dragonfly series of blog posts, we will explore different techniques and best practices for developing applications with Dragonfly. In this blog post, we explore the 3 common caching problems and best practices to mitigate them.

Developing with Dragonfly: Cache-Aside

Developing with Dragonfly: Cache-Aside

In the Developing with Dragonfly series of blog posts, we will explore different techniques and best practices for developing applications with Dragonfly. We start with one of the most common usages: Cache-Aside.

Fearlessly Handling BigKeys with Dragonfly

Fearlessly Handling BigKeys with Dragonfly

Wrestling with BigKeys is hardly an issue when using Dragonfly, the groundbreaking in-memory data store. You can use BigKeys in Dragonfly if they are necessary to your server applications, fearlessly.

Running the Feast Feature Store with Dragonfly

Running the Feast Feature Store with Dragonfly

In this blog post, we explore the seamless integration of Dragonfly as a drop-in replacement for Redis in Feast—an acclaimed feature storage and server project widely recognized in the machine learning domain. With just some simple steps, we unveil the outstanding compatibility of Dragonfly as an online store solution for Feast, ensuring a smooth transition without compromising existing functionalities.

The Unbearable Lightness of Horizontal Scaling

The Unbearable Lightness of Horizontal Scaling

This post explores the limitations of horizontal scaling in terms of cluster reliability, load distribution, and cloud over-commitment. It also outlines design decisions that were made to allow Dragonfly, a drop-in Redis replacement, to scale vertically in order to handle heavy workloads and large data volumes on a single instance. By adopting Dragonfly's vertical scaling capabilities, organizations can achieve improved performance, cost savings, and operational efficiency in their distributed systems.

Zero Downtime Migration from Redis to Dragonfly using Redis Sentinel

Zero Downtime Migration from Redis to Dragonfly using Redis Sentinel

This blog post discusses zero-downtime migration from Redis to Dragonfly using Redis Sentinel. It covers the benefits of Dragonfly, migration techniques, and the role of Redis Sentinel in ensuring seamless migration without service interruption. The post provides steps to configure Dragonfly as a replica and promote it using Sentinel.

Monitoring In-memory datastores

Monitoring In-memory datastores

This blog post covers monitoring in-memory datastores, focusing on Dragonfly. Learn how to use Prometheus and Grafana to monitor Dragonfly metrics and visualize them on a dashboard. Explore memory consumption, client-side metrics, server metrics and more.

Leveraging the power of Lua scripting with Dragonfly

Leveraging the power of Lua scripting with Dragonfly

This blog post discusses the limitations of Lua scripting in Redis and introduces Dragonfly as a drop-in replacement for Redis. Dragonfly addresses the challenges of long-running scripts and scalability, offering a vertically scalable, multi-threaded, and asynchronous architecture that improves performance and efficiency for Lua scripting in Redis.

We’re Ready for You Now: Dragonfly In-Memory DB Now Supports Replication for High Availability

We’re Ready for You Now: Dragonfly In-Memory DB Now Supports Replication for High Availability

Dragonfly, an in-memory database that can be a drop-in Redis replacement, now supports replication for high availability in its version 1.0 release.

Migrating from a Redis Cluster to Dragonfly on a single node

Migrating from a Redis Cluster to Dragonfly on a single node

In this blog post, you will learn how to migrate data from a Redis Cluster to a single-node Dragonfly instance. We will use a sample application to demonstrate the migration process and cover everything step by step.

Rate Limiting with Dragonfly

Rate Limiting with Dragonfly

Dragonfly offers a rate limiting API via the CL.THROTTLE command. This post outlines the rate limit algorithm background and how you can use it in your application.

Building a Background Processing Pipeline with Dragonfly

Building a Background Processing Pipeline with Dragonfly

In this blog post, you will learn how to use Redis Lists to build a background processing pipeline with Dragonfly.

Top 5 Reasons Why Your Redis Instance Might Fail

Top 5 Reasons Why Your Redis Instance Might Fail

In this article, we will explain the main reasons why your Redis instance might fail, and provide advice to avoid this.

Redis vs. Dragonfly Scalability and Performance

Redis vs. Dragonfly Scalability and Performance

A thorough benchmark comparison of throughput, latency, and memory utilization between Redis and Dragonfly.

Balanced vs Unbalanced

Balanced vs Unbalanced

Balance is essential in life. When our focus is limited to improving a single aspect of our life, we weaken the whole system.

Dragonfly Cache Design

Dragonfly Cache Design

I talked in my previous post about Redis eviction policies. In this post, I would like to describe the design behind Dragonfly cache.

Redis Analysis - Part 2: Simplicity

Redis Analysis - Part 2: Simplicity

Let’s talk about the simplicity of Redis. Redis was initially designed as a simple store, and it seems that its APIs achieved this goal.

Redis Analysis - Part 1: Threading model

Redis Analysis - Part 1: Threading model

Following my previous post, we are going start with the “hottest potato” - single-threaded vs multi-threaded argument.

A prelude to analysis of Redis memory-store

A prelude to analysis of Redis memory-store

During the last 13 years, Redis has become a truly ubiquitous memory store that has won the hearts of numerous dev-ops and software engineers.

Start building today

Dragonfly is fully compatible with the Redis ecosystem and requires no code changes to implement.