Messaging NodeJS सह एकत्रित केल्यावर सामान्य अनुप्रयोगांपैकी एक आहे Redis. Redis लवचिक डेटा संरचना प्रदान करते जसे की Pub/Sub(Publish/Subscribe) आणि Message Queue, संप्रेषण प्रणाली तयार करणे आणि अनुप्रयोगातील घटकांमधील डेटा एक्सचेंज सक्षम करणे.
Pub/Sub(Publish/Subscribe)
Pub/Sub अनुप्रयोगाच्या घटकांना नोंदणी आणि संदेश प्रसारित करून संप्रेषण करण्याची अनुमती देते. एखादा घटक प्रकाशक म्हणून काम करू शकतो, चॅनेलला संदेश पाठवू शकतो आणि इतर घटक त्या चॅनेलवरील संदेश ऐकून सदस्य म्हणून काम करू शकतात.
आणि NodeJS Pub/Sub सह वापरण्याचे उदाहरण: Redis
const Redis = require('ioredis');
const subscriber = new Redis();
const publisher = new Redis();
// Subscribe and listen for messages on the 'notifications' channel
subscriber.subscribe('notifications',(err, count) => {
console.log(`Subscribed to ${count} channels.`);
});
// Handle messages when received from the 'notifications' channel
subscriber.on('message',(channel, message) => {
console.log(`Received message from channel '${channel}': ${message}`);
});
// Publish a message to the 'notifications' channel
publisher.publish('notifications', 'New notification!');
Message Queue
Redis Message Queue असिंक्रोनस नोकऱ्या व्यवस्थापित करण्यासाठी आणि त्यावर प्रक्रिया करण्यासाठी म्हणून वापरले जाऊ शकते. हे विलंब कमी करण्यात मदत करते आणि अनुप्रयोगाची स्केलेबिलिटी वाढवते.
आणि NodeJS Message Queue सह वापरण्याचे उदाहरण: Redis
const Redis = require('ioredis');
const client = new Redis();
// Add a task to the 'tasks' queue
client.rpush('tasks', JSON.stringify({ id: 1, data: 'Task 1' }));
// Process tasks from the 'tasks' queue
function processTask() {
client.lpop('tasks',(err, task) => {
if(task) {
const parsedTask = JSON.parse(task);
console.log('Processing task:', parsedTask);
// Process the task here...
// Continue processing the next tasks
processTask();
}
});
}
// Start processing tasks from the queue
processTask();
टीप: ही NodeJS सह Redis वापरण्याची फक्त मूलभूत उदाहरणे आहेत. Messaging सराव मध्ये, अंमलबजावणी आणि स्केलिंग Messaging प्रणाली अधिक जटिल असू शकतात आणि अनुप्रयोगाच्या विशिष्ट आवश्यकतांवर अवलंबून असतात. Redis अधिक जटिल प्रणालींमध्ये NodeJS सह समाकलित करताना सुरक्षा, त्रुटी हाताळणी आणि कार्यप्रदर्शन ऑप्टिमायझेशनचा विचार करा Messaging.