Ugrás a fő tartalomhoz

Redis + Horizon

Áttekintés

Redis: In-memory cache + queue storage Horizon: Laravel queue monitoring dashboard + worker manager

Redis Konfiguráció

Laravel Cloud: Managed Redis (TLS kötelező)

ENV változók:

REDIS_HOST=xxx.redis.cloud.laravel.com
REDIS_PORT=6379
REDIS_PASSWORD=*****
REDIS_CLIENT=phpredis
REDIS_SCHEME=tls

Horizon Konfiguráció

Fájl: config/horizon.php

'production' => [
'supervisor-1' => [
'connection' => 'redis',
'queue' => ['default'],
'balance' => 'auto', // Auto-balance workers
'processes' => 10, // 10 parallel worker
'tries' => 3,
'timeout' => 300, // 5 perc max job execution
],
],

Monitoring Dashboard:

  • Production: https://app.character.hu/horizon
  • Staging: https://staging.character.hu/horizon

Redis Hozzáférés (Debug)

Node.js + ioredis (TLS support):

const Redis = require('ioredis');
const redis = new Redis({
host: process.env.REDIS_HOST,
port: process.env.REDIS_PORT,
password: process.env.REDIS_PASSWORD,
tls: { rejectUnauthorized: false },
});

redis.keys('*', (err, keys) => {
console.log(keys);
});

Script: /tmp/redis_check.js Referencia: /docs/local/_session/redis_tls_reference.md

Queue Key Struktúra

Laravel prefix: laravel_database_

laravel_database_queues:default       # Queue items (list)
laravel_database_horizon:jobs:* # Job tracking
laravel_database_horizon:metrics:* # Metrics

⚠️ Prefix conflict: Node.js script-ek NEM használják a Laravel prefix-et automatikusan!

📖 Részletek: /docs/local/_session/redis_prefix_conflict.md

Troubleshooting

🚧 TODO: Stuck job, memory limit, worker restart.


Utolsó frissítés: 2026-02-05