Skip to content

Requirements and Integrations

petergoldstein edited this page Feb 10, 2026 · 5 revisions

Memcached

Dalli 5.0 uses the memcached meta protocol exclusively and requires memcached 1.6+.

The meta protocol, an evolution of the older ASCII protocol, is the actively maintained protocol for memcached. It provides features not available in the legacy binary protocol, including rich metadata retrieval, thundering herd protection, and fine-grained cache control.

Dalli works with Elasticache, MemCachier, and other hosted memcached services, as long as they run memcached 1.6 or later.

Ruby

Dalli 5.0 requires Ruby 3.3+.

A Ruby implementation is considered supported if it runs as part of Dalli's CI process. The following Ruby versions are currently tested:

  • MRI: 3.3.x, 3.4.x, 4.0.x
  • JRuby: 10.x
  • TruffleRuby

Rack

Dalli does not have a runtime dependency on Rack. It can be used in non-Rack applications.

Dalli includes a Rack session store implementation (Rack::Session::Dalli). Use of that implementation requires Rack 2.x (version 2.2.0 or higher) or Rack 3.x.

Rails

Dalli does not have a runtime dependency on Rails. It can be used in non-Rails applications.

That said, Dalli is frequently used in Rails applications. Rails includes ActiveSupport::Cache::MemCacheStore, which uses Dalli internally. See Using Dalli with Rails for details.

Dalli maintains compatibility with Rails versions covered by the Rails maintenance policy.

Clone this wiki locally