Tema Tampilan

Spesifikasi Tech Stack

Laravel 10Vue.js (SSG)Pusher APICentova CastCronjobsMySQL

Tag Spesialisasi

#Semi-Microservice#WebSockets#Audio Streaming#Real-Time System#RBAC
NGRadio: Optimasi Arsitektur & Real-Time Streaming
Full-Cycle Refactoring & API IntegrationBeban server turun drastis sementara kecepatan interaksi (chat & request lagu tanpa penyiar) berjalan instan. Begitu siaran otomatis mati (off-air), sistem langsung menyajikan kalkulasi analitik total pendengar. Aplikasi kini berjalan jauh lebih stabil dan scalable, membuktikan bahwa arsitektur kode yang efisien bisa menyelamatkan performa meskipun beroperasi di bawah limitasi Pusher gratis dan infrastruktur shared hosting seadanya.

NGRadio: Optimasi Arsitektur & Real-Time Streaming

Menyelamatkan aplikasi radio streaming dari beban server yang kritis dengan merombak arsitektur monolithic (CI2) menjadi semi-microservice. Menghapus sistem Ajax Polling usang dan menggantinya dengan WebSockets untuk efisiensi real-time, diselesaikan dalam waktu kurang dari 2 minggu.

Tantangan & Masalah Sistem

Sistem lama mencekik server (cPanel) karena menggunakan metode Ajax Polling untuk fitur chat, request lagu, dan status siaran. Ratusan pendengar menarik data dari server secara bersamaan setiap beberapa detik, membuat resource server terkuras habis untuk tugas yang tidak efisien. Di sisi lain, infrastruktur yang tersedia sangat terbatas (shared hosting).

Solusi & Rekayasa Arsitektur

Saya memisahkan arsitektur menjadi dua bagian: Public Page yang super ringan menggunakan Vue.js (SSG) dan Admin Panel berbasis Laravel 10 dengan sistem akses RBAC. Saya membuang Ajax Polling dan mengalihkan seluruh fitur real-time menggunakan Pusher. Saya juga mengintegrasikan bank lagu dari Centova Cast (via import Excel) dan membangun Auto-Kill Switch menggunakan Laravel Scheduler & Cronjobs untuk mematikan status siaran secara otomatis jika penyiar lupa menekan tombol off-air.