Інтеграція додатку Node.js з Redis Cluster на AWS

pic

www.savcb/writerspov.com

Як я входжу в ту кімнату,
Твої очі змушують мене тремтіти. Вони кликали мене, як старий телефон, що чекає відповіді; Це було дивно. Тому що той голос колись був моїм втіхою.

Я перестав говорити про тебе деякий час,
Але ті маленькі погляди твої змусили
Розсипатися на дрібні монети.

Це було відчуття, якому я не міг протистояти.

Я знаю, що ти теж хочеш мене, але любити тебе було сумно. І я був дурний, думаючи, що це ти, думаючи, що ми — ті, хто має бути разом, двоє.

І коли я дивлюсь трохи довше, здається, що ти можеш читати думки; хіба ти не бачиш це з тих очей?

Я любив тебе з грудня, Взаємність цього почуття я пам'ятаю. Ось тобі поезія, яку я тобі віддаю:

Це ти мене завоював,
Люби мене з усією відданістю,
Ти дивишся на мене так ніжно.
Знаючи, що ці погляди
були більше, ніж смертельно.

Вибери число, одне чи два;
Любов, яку я тобі віддав, можливо, справжня,
Ти ніколи не знав, як сильно я тебе люблю,
Знаючи, що нікому ніколи не було так,
як з тобою.

Чому ми не можемо спробувати хоча б раз?
Спробуймо говорити без пауз і сумнівів.

Я люблю ловити погляди, коли ми крадемо погляди одне в одного… і можливо трохи довше було б краще.
Створіть файл з іменем app.js і додайте наступний код:

const express = require('express');  
const Redis = require('ioredis');  

const app = express();  
const port = 3000;  

// Конфігурація Redis Cluster  
const cluster = new Redis.Cluster([  
 { host: 'redis1-private-ip', port: 6379 },  
 { host: 'redis2-private-ip', port: 6379 },  
 { host: 'redis3-private-ip', port: 6379 },  
 { host: 'redis4-private-ip', port: 6379 },  
 { host: 'redis5-private-ip', port: 6379 },  
 { host: 'redis6-private-ip', port: 6379 }  
]);  

app.use(express.json());  

app.get('/', (req, res) => res.send('Сервер Node.js працює!'));  

app.post('/set', async (req, res) => {  
 const { key, value } = req.body;  
 try {  
 await cluster.set(key, value);  
 res.json({ message: 'Значення встановлено успішно' });  
 } catch (error) {  
 res.status(500).json({ error: error.message });  
 }  
});  

app.get('/get/:key', async (req, res) => {  
 const { key } = req.params;  
 try {  
 const value = await cluster.get(key);  
 value  
 ? res.json({ [key]: value })  
 : res.status(404).json({ message: 'Ключ не знайдено' });  
 } catch (error) {  
 res.status(500).json({ error: error.message });  
 }  
});  

app.listen(port, () => console.log(`Сервер працює на http://localhost:${port}`));
  1. Замініть значення host на приватні IP-адреси ваших вузлів Redis Cluster.

  2. Запустіть додаток:

node app.js

Крок 5: Тестування додатку

  1. Перевірте, чи працює сервер:
curl http://:3000
  1. Встановіть пару ключ-значення:
curl -X POST -H "Content-Type: application/json" \  
-d '{"key":"mykey","value":"Привіт від Redis!"}' \  
http://:3000/set
  1. Отримайте значення:
curl http://:3000/get/mykey

Висновок

Цей посібник демонструє масштабовану та надійну інтеграцію Redis Cluster з додатком Node.js. Рішення забезпечує високу доступність та продуктивність, що робить його підходящим для виробничих середовищ. З AWS, Pulumi та Redis можна створювати надійні, хмарні додатки, готові до обробки реальних навантажень.

Перекладено з: Integrating a Node.js Application with a Redis Cluster on AWS

Leave a Reply

Your email address will not be published. Required fields are marked *