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 डाटाबेससँग संयोजन गरेर, तपाइँ लचिलो र शक्तिशाली तरिकामा च्याट, तत्काल सूचनाहरू, र घटना ट्र्याकिङ जस्ता जटिल वास्तविक-समय अनुप्रयोगहरू निर्माण गर्न सक्नुहुन्छ।