Real-time Laravel और के साथ सूचनाएं Redis

Real-time पृष्ठ को ताज़ा करने की आवश्यकता के बिना उपयोगकर्ताओं को त्वरित अलर्ट और अपडेट प्रदान करने के लिए वेब अनुप्रयोगों में सूचनाएं एक सामान्य सुविधा है। में Laravel, आप सूचनाओं को कुशलतापूर्वक Redis लागू करने के लिए आसानी से एकीकृत कर सकते हैं। सर्वर से क्लाइंट तक तुरंत सूचनाएं पहुंचाने के लिए एक कतार के रूप में उपयोग किया जाएगा। real-time Redis

स्थापित करना Redis और Laravel

आरंभ करने के लिए, Redis अपने सर्वर पर इंस्टॉल करें और कंपोज़र के माध्यम से predis/predis पैकेज इंस्टॉल करें। Laravel

composer require predis/predis

Real-time सूचनाएं एकीकृत करना

कतार को इसमें कॉन्फ़िगर करें Laravel

सबसे पहले, फ़ाइल में जानकारी Laravel जोड़कर कतार को कॉन्फ़िगर करें । Redis .env

QUEUE_CONNECTION=redis  
REDIS_HOST=127.0.0.1  
REDIS_PASSWORD=null  
REDIS_PORT=6379  

एक बनाएं Event

सूचनाएं भेजने के लिए एक event इन बनाएं. Laravel real-time

php artisan make:event NewNotificationEvent

फिर, app/Events/NewNotificationEvent.php फ़ाइल खोलें और event सामग्री को अनुकूलित करें।

use Illuminate\Broadcasting\Channel;  
use Illuminate\Contracts\Broadcasting\ShouldBroadcastNow;  
use Illuminate\Queue\SerializesModels;  
  
class NewNotificationEvent implements ShouldBroadcastNow  
{  
    use SerializesModels;  
  
    public $message;  
  
    public function __construct($message)  
    {  
        $this->message = $message;  
    }  
  
    public function broadcastOn()  
    {  
        return new Channel('notifications');  
    }  
}  

कॉन्फ़िगर Broadcast Driver

फ़ाइल खोलें config/broadcasting.php और सूचनाएं redis लागू करने के लिए ड्राइवर का उपयोग करें । real-time Redis

'connections' => [  
    'redis' => [  
        'driver' => 'redis',  
        'connection' => 'default',  
    ],  
    // ...  
],  

Real-time अधिसूचना भेजें

जब आपको कोई अधिसूचना भेजने की आवश्यकता हो real-time, तो event नियंत्रक या सेवा प्रदाता में आपके द्वारा अभी बनाई गई अधिसूचना का उपयोग करें।

use App\Events\NewNotificationEvent;  
  
public function sendNotification()  
{  
    $message = 'You have a new notification!';  
    event(new NewNotificationEvent($message));  
}  

Real-time क्लाइंट पर अधिसूचना संभालें

अंत में, जावास्क्रिप्ट और इको का real-time उपयोग करके क्लाइंट पर अधिसूचना को संभालें । Laravel सुनिश्चित करें कि आपने Laravel अपने एप्लिकेशन के लिए इको इंस्टॉल और कॉन्फ़िगर किया है।

// Connect to the 'notifications' channel  
const channel = Echo.channel('notifications');  
  
// Handle the event when receiving a real-time notification  
channel.listen('.NewNotificationEvent',(notification) => {  
    alert(notification.message);  
});  

 

निष्कर्ष

एकीकृत करने से Redis आप Laravel आसानी से real-time अपने वेब एप्लिकेशन में सूचनाएं तैनात कर सकते हैं। जब कोई नई अधिसूचना आती है, तो एप्लिकेशन इसे भेज देगा Redis, और ग्राहक को पृष्ठ को ताज़ा करने की आवश्यकता के बिना तुरंत अधिसूचना प्राप्त होगी। यह उपयोगकर्ता अनुभव को बेहतर बनाता है और एप्लिकेशन की इंटरएक्टिविटी को बढ़ाता है।