Menggabungkan Statistik Dua Website Dalam Satu Dashboard API - Perwira Learning Center
Latar Belakang
Dalam sistem monitoring modern, sering kali kita perlu menggabungkan data dari beberapa sumber atau website ke dalam satu dashboard terpusat. Hal ini berguna untuk mempermudah analisis dan pengambilan keputusan. Dengan Laravel, kita dapat menggabungkan data dari dua database atau dua sistem berbeda ke dalam satu endpoint API berbasis JSON.
Alat yang Digunakan
Beberapa alat yang digunakan:
PHP
Laravel Framework
MySQL / MariaDB
API JSON
Web Server (Apache/Nginx)
Konsep Penggabungan Data
Kita akan menggabungkan statistik dari:
Database utama (
mysql)Database kedua (
second_mysql)
Data yang diambil bisa berupa:
Total user
Login harian
Kemudian semua data tersebut akan dikembalikan dalam satu endpoint API.
Implementasi Endpoint API
Tambahkan atau gunakan endpoint berikut:
Route::get('/dashboard/stats', [DashboardController::class, 'stats']);
Membuat Method Controller
Berikut contoh method untuk menggabungkan data dari dua database:
Contoh Response JSON
{
"main_website": {
"total_user": 120,
"login_hari_ini": 30
},
"second_website": {
"total_user": 80,
"login_hari_ini": 15
}
}
Penjelasan Kode
Mengambil data dari database utama menggunakan
DB::table()Mengambil data dari database kedua menggunakan
DB::connection('second_mysql')Menggunakan
whereDate()untuk filter login hari iniSemua data digabung dalam satu response JSON
Kelebihan Pendekatan Ini
Monitoring terpusat dalam satu endpoint
Mendukung multi database / multi sistem
Mudah dikonsumsi oleh frontend (dashboard, grafik, dll)
Struktur data rapi dan scalable
Catatan Penting
Pastikan kedua database memiliki struktur tabel yang sama
Perhatikan performa jika jumlah data besar
Gunakan caching jika diperlukan
Pastikan koneksi database kedua stabil
Kesimpulan
Menggabungkan statistik dari dua website dalam satu endpoint API di Laravel merupakan solusi efektif untuk membangun sistem monitoring terpusat. Dengan memanfaatkan multiple database connection dan Query Builder, kita dapat menyajikan data secara real-time dalam format JSON yang mudah digunakan oleh frontend.
Daftar Pustaka
Laravel Documentation. (2025). "Database: Query Builder". Diakses dari https://laravel.com/docs/queries
Laravel Documentation. (2025). "Database: Multiple Connections". Diakses dari https://laravel.com/docs/database
W3Schools. (2025). "JSON Server Response". Diakses dari https://www.w3schools.com/js/js_json_server.asp
0 komentar:
Posting Komentar