Kuunganishwa Laravel WebSocket na Hifadhidata: Usimamizi wa Data wa Wakati Halisi

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.