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