Accelerate Guru ships as a single binary. There is no JVM, no PHP runtime, no Node.js. The entire edge fits in approximately 18 MB and depends only on the kernel's TCP stack (plus OpenSSL for TLS). Pick your platform below.
Important
Before installing Accelerate Guru, install DragonflyDB on the same server. Without it, caching is disabled and Accelerate Guru runs as a pass-through proxy only. See DragonflyDB Setup.
#Server requirements & capacity planning
#Why the edge server can be small
Accelerate Guru is written in Rust with a fully asynchronous I/O model (based on Pingora, Cloudflare's open-source Rust proxy framework). Unlike PHP, which spawns a new process or thread per request, Rust uses a tiny state machine per connection — no stack allocation, no heap per request, no garbage collector. A single CPU core can drive tens of thousands of simultaneous connections.
On a warm cache, the work per request is:
- Parse HTTP headers — ~1 µs
- Look up the page in DragonflyDB — ~100–500 µs (network round-trip to loopback)
- Send the cached bytes to the client — the bottleneck is the NIC, not the CPU
The result: the edge server's CPU barely moves under normal load. Most of its time is spent waiting on network I/O — and that is handled by the kernel, not by Accelerate Guru.
#Recommended configurations
#Solo setup (edge + Magento on the same server)
This is fine for small-to-medium stores (up to ~500K pages/day) and is the simplest deployment:
| Server spec | Recommended for | Notes |
|---|---|---|
| 4 vCPU / 8 GB RAM | Up to ~200K pages/day | Magento and Accelerate Guru on same host |
| 8 vCPU / 16 GB RAM | Up to ~500K pages/day | DragonflyDB gets ~6 GB of that RAM |
| 16 vCPU / 32 GB RAM | Up to ~2M pages/day | Comfortable headroom for spikes |
#Split setup (edge server separate from Magento — recommended for growth)
Run Accelerate Guru + DragonflyDB on a lightweight VPS and Magento on a dedicated server:
Visitors → [Edge VPS] ──(cache miss ~5%)──▶ [Magento Server]
AG + Dragonfly PHP + MySQL
2–4 vCPU / 8 GB 8–16 vCPU / 32 GB+
~$20-40/month your existing server
This is the right architecture when:
- You want to scale Magento and the edge independently.
- You're adding Accelerate Guru to an existing Magento server that is already at capacity.
- You're deploying a global edge fleet with multiple regional nodes pointing at one central Magento.
The edge VPS handles virtually unlimited traffic. The Magento server only sees the cache misses — roughly 5–10% of real requests after warmup. A store receiving 1 million daily visitors may only generate 50,000–100,000 PHP requests per day at the Magento level. That changes what "powerful Magento server" you actually need.
#Minimum hardware requirements
| Component | Minimum | Recommended (production) |
|---|---|---|
| Edge server CPU | 1 vCPU | 2–4 vCPU |
| Edge server RAM | 2 GB | 8 GB (DragonflyDB uses ~60% of available RAM for cache) |
| Edge server disk | 10 GB | 40–100 GB (AVIF image cache grows over time) |
| Network | 100 Mbps | 1 Gbps+ |
| Magento server | Unchanged | Unchanged — load drops after install, may be able to downsize |
Tip
The single most important spec for the edge server is RAM, not CPU. DragonflyDB is an in-memory store — the more RAM you give it, the more pages it can hold in cache without eviction. A store with 100,000 unique cached pages at ~50 KB average needs ~5 GB of DragonflyDB cache. An 8 GB edge server gives you ~5–6 GB of usable DragonflyDB RAM after OS and process overhead.
#Concurrent connection capacity
Accelerate Guru can hold hundreds of thousands of simultaneous open connections on modest hardware:
| Edge server | Concurrent connections | Requests/second (cache hits) |
|---|---|---|
| 1 vCPU / 2 GB RAM | ~50,000 | ~30,000 rps |
| 2 vCPU / 4 GB RAM | ~150,000 | ~80,000 rps |
| 4 vCPU / 8 GB RAM | ~400,000 | ~200,000 rps |
| 8 vCPU / 16 GB RAM | ~800,000+ | ~400,000+ rps |
To put that in perspective: a 2 vCPU / 4 GB VPS costing $20/month can serve 80,000 cached pages per second. A global flash sale generating 50 million page views in an hour is less than 14,000 requests per second — well within a single small server's capacity.
Note
These figures are for cache hits (the 90–95% majority of traffic). Cache misses are forwarded to Magento and are bounded by Magento's own concurrency limits, not Accelerate Guru's.
#Disk space planning for the image cache
AVIF-encoded images are stored on disk in image_cache_dir. The space needed depends on your catalogue size:
| Catalogue size | Avg images/product | Image cache size (est.) |
|---|---|---|
| 1,000 products | 5 images | ~1 GB |
| 10,000 products | 5 images | ~8 GB |
| 100,000 products | 5 images | ~70 GB |
AVIF files are 60–90% smaller than the originals, so even large catalogues are manageable. Use a fast SSD — the image cache is read-heavy and latency-sensitive.
#Linux
Linux is the primary supported platform. All major distributions with a kernel ≥ 4.19 are supported. The binary requires glibc ≥ 2.17 (RHEL 7+, Ubuntu 16.04+, Debian 9+); a static musl build is also available for Alpine and minimal containers.
#Install with the one-line script (recommended)
|
The script automatically:
- Selects the correct binary (
glibcvsmusl,x86_64vsaarch64) - Detects AVX2 support on x86_64 CPUs and downloads the optimised build
- Verifies the SHA-256 checksum before installing
- Registers a
systemdunit - Seeds
/etc/accelerate-guru/magento_ultra.iniwith defaults
#Manual install
If you prefer to control the download:
# Choose the right variant for your system:
# accelerate-guru-linux-x86_64-glibc.tar.gz (most servers)
# accelerate-guru-linux-x86_64-glibc-avx2.tar.gz (Haswell 2013+ / AWS / GCP)
# accelerate-guru-linux-x86_64-musl.tar.gz (Alpine / containers)
# accelerate-guru-linux-aarch64-glibc.tar.gz (Graviton / Ampere)
VERSION=latest
#Privileged port binding (without running as root)
The binary needs to bind ports 80 and 443. The installer sets the CAP_NET_BIND_SERVICE capability automatically on Linux:
The systemd unit already includes AmbientCapabilities=CAP_NET_BIND_SERVICE, so if you used the installer, this is handled for you.
#File locations (Linux)
| Path | Purpose |
|---|---|
/usr/local/bin/accelerate-guru | Binary |
/etc/accelerate-guru/magento_ultra.ini | Main configuration |
/etc/accelerate-guru/domain_masking/ | Per-host config overrides |
/etc/accelerate-guru/blocklist.ini | IP/CIDR block rules |
/etc/accelerate-guru/redirects.ini | URL rewrite rules |
/etc/accelerate-guru/text-replace.ini | HTML text substitution rules |
/etc/systemd/system/accelerate-guru.service | systemd unit |
/var/log/accelerate-guru/ | Log files |
/var/cache/accelerate-guru/ | Image cache, SSL cache |
#Managing the service
#Uninstall (Linux)
Note
Uninstalling Accelerate Guru does not change your Magento installation. Your store returns to whatever was listening on ports 80/443 before.
#macOS
macOS is supported for production and local development. Both Intel (x86_64) and Apple Silicon (M1/M2/M3, aarch64) are supported — Homebrew picks the correct binary automatically.
#Install with Homebrew (recommended)
#Start as a background service (launchd)
This registers a LaunchAgent that starts Accelerate Guru at login and restarts it automatically if it crashes.
Check status:
#File locations (macOS)
| Path | Purpose |
|---|---|
$(brew --prefix)/bin/accelerate-guru | Binary |
$(brew --prefix)/etc/accelerate-guru/magento_ultra.ini | Main configuration |
$(brew --prefix)/etc/accelerate-guru/domain_masking/ | Per-host overrides |
$(brew --prefix)/var/log/accelerate-guru.log | Log file |
$(brew --prefix)/var/cache/accelerate-guru/ | Image cache |
#Privileged ports on macOS
On macOS, ports below 1024 require root or a special entitlement. For local development, it is simpler to use non-privileged ports:
[server]
http_port = 8080
https_port = 8443
If you need ports 80/443 in production, run the service as root via a launchd system daemon rather than a user agent. The accelerate-guru install --launchd command handles this.
#Manage the service manually
# Or directly:
#Uninstall (macOS)
#Docker / Container
A Docker image is useful for containerised environments, Kubernetes, and CI pipelines.
#Run with Docker
Tip
--network host is recommended for production because it allows the container to reach 127.0.0.1:8080 (Magento) and 127.0.0.1:6379 (DragonflyDB) without extra network configuration. On macOS or Windows Docker Desktop, use explicit host addresses instead.
#Docker Compose
A ready-to-use docker-compose.yml is included in the install package:
version: "3.9"
services:
accelerate-guru:
image: ghcr.io/accelerate-guru/edge:latest
network_mode: host
restart: unless-stopped
volumes:
- ./config:/etc/accelerate-guru:ro
- ./cache:/var/cache/accelerate-guru
environment:
RUST_LOG: info
dragonflydb:
image: docker.dragonflydb.io/dragonflydb/dragonfly:latest
network_mode: host
restart: unless-stopped
command: dragonfly --bind 127.0.0.1 --port 6379
ulimits:
memlock: -1
Start the stack:
#Environment variables in containers
All config keys can be overridden with environment variables. This is the recommended way to inject secrets:
Variable naming: uppercase section and key joined by _, prefixed with AG_. For example, [server] upstream_port = 8080 becomes AG_SERVER_UPSTREAM_PORT=8080.
#Warden.dev
For local Magento development with Warden, a ready-made configuration is available at accelerate-guru/warden-config.
Clone or download the repo, copy the .warden folder to your Magento project root, then start the environment:
All settings are in .warden/config/magento_ultra.ini. Useful commands:
The Accelerate Guru dashboard is available at https://yoursite.test/stats-ag.
#Kubernetes
For Kubernetes, deploy as a DaemonSet (one pod per node) or as a dedicated Deployment in front of your Magento pods. Use a ConfigMap for magento_ultra.ini and a Secret for the license key.
apiVersion: apps/v1
kind: DaemonSet
metadata:
name: accelerate-guru
spec:
selector:
matchLabels:
app: accelerate-guru
template:
metadata:
labels:
app: accelerate-guru
spec:
hostNetwork: true # access loopback services
containers:
- name: accelerate-guru
image: ghcr.io/accelerate-guru/edge:latest
env:
- name: AG_LICENSE_KEY
valueFrom:
secretKeyRef:
name: accelerate-guru-secrets
key: license-key
volumeMounts:
- name: config
mountPath: /etc/accelerate-guru
readOnly: true
volumes:
- name: config
configMap:
name: accelerate-guru-config
#Adobe Commerce Cloud (managed environments)
Adobe Commerce Cloud is a managed, read-only environment — you cannot install arbitrary binaries on the server directly. The correct deployment approach is to run Accelerate Guru on a separate VPS that you control, then point it at the Adobe Cloud origin.
#Architecture
Visitor
│
▼
Accelerate Guru VPS
(your server — same AWS/Azure region as Adobe Cloud)
│ cache misses only
▼
Adobe Commerce Cloud origin
(your Magento, unchanged)
#Step-by-step
Provision a VPS in the same region as your Adobe Cloud environment. If Adobe Cloud runs on AWS
eu-west-1, use an AWS EC2 ineu-west-1. The low inter-region latency means cache misses are fast (often < 5 ms additional overhead).Install Accelerate Guru and DragonflyDB on the VPS using the standard Linux installer.
Configure the origin to point at your Adobe Cloud hostname. Adobe Cloud Pro environments expose a stable origin hostname (e.g.
your-env-id.c123.magento.cloud):
[server]
upstream_addr = your-env-id.c123.magento.cloud
upstream_port = 443
[tls_ssl]
upstream_tls = true ; Adobe Cloud always uses HTTPS on its origin
- Update your DNS to point your store domain at the Accelerate Guru VPS IP. Adobe Commerce Cloud is unchanged — it simply receives fewer requests because the edge caches 90–95% of them.
Tip
Adobe Commerce Cloud Pro includes Fastly. If you keep Fastly, you have two options:
- Accelerate Guru as Fastly origin: Fastly → Accelerate Guru VPS → Adobe Cloud. Accelerate Guru handles Magento-intelligent caching, WAF, and optimisation; Fastly handles the last-mile CDN layer globally.
- Bypass Fastly: point DNS directly at your Accelerate Guru VPS. Accelerate Guru handles everything.
Note
The VPS running Accelerate Guru does not need to be large — a 2–4 vCPU / 8 GB RAM server handles significant traffic volumes because 90–95% of requests are answered from DragonflyDB memory. The Adobe Cloud instance may see its load drop enough to justify a smaller plan tier.
#Upgrading
#Linux / systemd
|
# The installer replaces the binary and restarts the service gracefully.
Accelerate Guru drains in-flight requests before the old process exits — no requests are dropped during an upgrade.
#macOS / Homebrew
&&
#Docker
&&
#AVX2 and performance-optimised builds
On Linux x86_64 systems, two builds are available:
| Build | Requires | Speed |
|---|---|---|
glibc (baseline) | SSE2 — any x86_64 CPU since 2003 | Standard |
glibc-avx2 | AVX2 — Intel Haswell 2013+ / AMD Ryzen 1000+ | ~10–20% faster on CPU-heavy paths |
The install script detects AVX2 automatically via /proc/cpuinfo. All major cloud providers (AWS, GCP, Azure, DigitalOcean, Hetzner) use Haswell-or-newer CPUs in their VMs, so most server installs get the AVX2 build by default.
To manually check which build is running:
# → accelerate-guru 1.2.3
# built with rustc 1.87