Kuunganishwa Laravel WebSocket na hifadhidata ni sehemu muhimu ya kuunda programu za wakati halisi kama vile Chat, arifa za papo hapo na ufuatiliaji wa matukio. Kwa kuchanganya WebSocket na hifadhidata, tunaweza kuhifadhi na kudhibiti data ya wakati halisi. Hapa kuna jinsi ya kujumuisha Laravel WebSocket na hifadhidata.
Hatua ya 1: Sakinisha Laravel WebSocket Kifurushi
Kwanza, sasisha na usanidi laravel-websockets
kifurushi. Tumia Mtunzi kusakinisha kifurushi:
composer require beyondcode/laravel-websockets
Mara tu ikiwa imewekwa, unahitaji kuchapisha faili za usanidi na kufanya kazi muhimu:
php artisan vendor:publish --tag=websockets-config
php artisan migrate
Hatua ya 2: Unda Jedwali la Hifadhidata kwa Ujumbe
Tutaunda jedwali katika hifadhidata ili kuhifadhi ujumbe. Tumia amri ifuatayo kuunda messages
meza:
php artisan make:model Message -m
Baada ya kutekeleza amri, utaona migration faili iliyoundwa kwenye database/migrations
saraka. Fungua migration faili na ueleze muundo wa messages
jedwali:
// database/migrations/xxxx_xx_xx_create_messages_table.php
public function up()
{
Schema::create('messages', function(Blueprint $table) {
$table->id();
$table->unsignedBigInteger('user_id');
$table->text('content');
$table->timestamps();
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
});
}
Tekeleza migration amri kuunda jedwali kwenye hifadhidata:
php artisan migrate
Hatua ya 3: Kushughulikia Kudumu kwa Ujumbe kupitia WebSocket
Mtumiaji anapotuma ujumbe, tunahitaji kushughulikia na kudumisha ujumbe huo kwenye hifadhidata. Katika tukio lililotumwa na ujumbe, unaweza kutumia Laravel Utangazaji kutuma ujumbe huo WebSocket na kuhifadhi ujumbe huo katika hifadhidata.
// app/Events/MessageSent.php
public function broadcastOn()
{
return new Channel('chat');
}
public function broadcastWith()
{
return [
'message' => $this->message,
'user' => $this->user,
];
}
// app/Listeners/SaveMessage.php
public function handle(MessageSent $event)
{
$message = new Message();
$message->user_id = $event->user->id;
$message->content = $event->message;
$message->save();
}
Hitimisho
Kuunganisha Laravel WebSocket na hifadhidata hukuruhusu kuhifadhi na kudhibiti data ya wakati halisi kwa ufanisi. Kwa kuchanganya WebSocket na hifadhidata, unaweza kuunda programu changamano za wakati halisi kama vile Chat, arifa za papo hapo na ufuatiliaji wa matukio kwa njia rahisi na yenye nguvu.