Fly.io একটি চমৎকার প্ল্যাটফর্ম যেখানে আপনি আপনার অ্যাপ্লিকেশন বিশ্বব্যাপী ডিস্ট্রিবিউট করতে পারেন। যখন আপনার অ্যাপ্লিকেশন গ্লোবাল, তখন আপনার ডেটাও গ্লোবাল হতে হবে। আপনি Fly.io অ্যাপ হিসেবে রেগুলার Redis चला सकते हैं কিন্তু সমস্যাটি হলো এটি একটি সিঙ্গেল অঞ্চলে অবস্থিত। অন্যদিকে, Upstash Redis Global Database Fly.io-র সাথে খুব ফিট করে কারণ এটি গ্লোবালি রেপ্লিকেটেড। علاবে, এর REST-ভিত্তিক SDK-এর فضل থেকে, স্টেটলেস রানটাইমে এটি কোনো কানেকশন সমস্যা হয় না।
এই আর্টিকেলে, আমি একটি বেসিক Node.js অ্যাপ্লিকেশন তৈরি করব যা Upstash Redis অ্যাক্সেস করে এবং এটিকে Fly.io প্ল্যাটফর্মে ডিপ্লয় করব।
Fly.io সেটআপ
- একটি Fly.io অ্যাকাউন্ট তৈরি করুন।
- flyctl ইনস্টল করুন এবং
flyctl auth loginরান করুন।
Upstash Redis সেটআপ
- Upstash Console-এ একটি ফ্রি Global Database তৈরি করুন।
- REST_URL এবং REST_TOKEN কপি করুন, পরবর্তী ধাপে আপনি এগুলো ব্যবহার করবেন।
অ্যাপ্লিকেশন কোড
- Hello world অ্যাপ ক্লোন করুন:
git clone https://github.com/fly-apps/hellonode-builtin - ডিপেন্ডেন্সি ইনস্টল করুন:
npm install express @upstash/redis - server.js আপডেট করুন এবং
urlওtokenরিপ্লেস করুন:
const express = require("express"); const app = express(); const port = process.env.PORT || 3000; const { Redis } = require("@upstash/redis"); const redis = new Redis({ url: "REPLACE_HERE", token: "REPLACE_HERE", }); app.get(["/", "/:name"], async (req, res) => { let greeting = "Hello From Node on Fly!
"; if (req.url !== "/favicon.ico") { const data = await redis.incr("count"); res.send(greeting + "
Counter: " + data); } else { res.send(""); } }); app.listen(port, () => console.log(`HelloNode app listening on port ${port}!`));
রান এবং ডিপ্লয়
অ্যাপ্লিকেশনটি লোকালি চালান:
node server.jsFly.io-এ লঞ্চ এবং ডিপ্লয় করুন:
flyctl launchআপনি আপনার অ্যাপ রি-ডিপ্লয় করতে পারেন:
flyctl deployআপনার অ্যাপ্লিকেশনের URL দেখুন:
flyctl statusআপনি fly.io ড্যাশবোর্ড থেকেও আপনার অ্যাপ্লিকেশন চেক করতে পারেন:

শেষ কথা
এই আর্টিকেলে, আমরা Fly.io অ্যাপ্লিকেশন প্ল্যাটফর্মে Upstash Redis কীভাবে ব্যবহার করা যায় তা প্রদর্শন করেছি।
যেকোনো সমস্যা বা মন্তব্যের জন্য আমাদের সাথে GitHub, Discord এবং Twitter-এ যোগাযোগ করতে পারেন।