Laravel WebSocket डाटाबेससँग एकीकरण गर्दै: वास्तविक-समय डाटा व्यवस्थापन

Laravel WebSocket डाटाबेससँग एकीकरण गर्नु भनेको च्याट, तत्काल सूचनाहरू, र घटना ट्र्याकिङ जस्ता वास्तविक-समय अनुप्रयोगहरू निर्माण गर्ने महत्त्वपूर्ण भाग हो। WebSocket डाटाबेससँग संयोजन गरेर, हामी प्रभावकारी रूपमा वास्तविक-समय डाटा भण्डारण र व्यवस्थापन गर्न सक्छौं। Laravel WebSocket डाटाबेससँग कसरी एकीकृत गर्ने भन्ने यहाँ छ ।

चरण 1: Laravel WebSocket प्याकेज स्थापना गर्नुहोस्

पहिले, प्याकेज स्थापना र कन्फिगर गर्नुहोस् laravel-websockets । प्याकेज स्थापना गर्न कम्पोजर प्रयोग गर्नुहोस्:

composer require beyondcode/laravel-websockets

एक पटक स्थापना भएपछि, तपाईंले कन्फिगरेसन फाइलहरू प्रकाशित गर्न र आवश्यक कार्यहरू गर्न आवश्यक छ:

php artisan vendor:publish --tag=websockets-config  
php artisan migrate  

चरण 2: सन्देशहरूको लागि डाटाबेस तालिका सिर्जना गर्नुहोस्

हामी सन्देशहरू भण्डारण गर्नको लागि डाटाबेसमा एउटा तालिका सिर्जना गर्नेछौं। तालिका सिर्जना गर्न निम्न आदेश प्रयोग गर्नुहोस् messages:

php artisan make:model Message -m

आदेश चलाएपछि, तपाईंले migration डाइरेक्टरीमा सिर्जना गरिएको फाइल देख्नुहुनेछ database/migrations । फाइल खोल्नुहोस् migration र तालिकाको संरचना परिभाषित गर्नुहोस् messages:

// 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');  
    });  
}  

migration डाटाबेसमा तालिका सिर्जना गर्न आदेश चलाउनुहोस्:

php artisan migrate

चरण 3: मार्फत सन्देश दृढता ह्यान्डलिंग WebSocket

जब प्रयोगकर्ताले सन्देश पठाउँछ, हामीले डाटाबेसमा सन्देशलाई ह्यान्डल र निरन्तरता दिनु पर्छ। सन्देश पठाइएको घटनामा, तपाइँ Laravel सन्देश पठाउन WebSocket र डाटाबेसमा सन्देश बचत गर्न प्रसारण प्रयोग गर्न सक्नुहुन्छ।

// 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();  
}  

निष्कर्ष

Laravel WebSocket डाटाबेससँग एकीकरणले तपाईंलाई वास्तविक-समय डाटा प्रभावकारी रूपमा भण्डारण गर्न र व्यवस्थापन गर्न अनुमति दिन्छ। WebSocket डाटाबेससँग संयोजन गरेर, तपाइँ लचिलो र शक्तिशाली तरिकामा च्याट, तत्काल सूचनाहरू, र घटना ट्र्याकिङ जस्ता जटिल वास्तविक-समय अनुप्रयोगहरू निर्माण गर्न सक्नुहुन्छ।