Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Redis

Triển khai Serverless Redis toàn cầu trên Fly.io để phân phối dữ liệu liền mạch

Fly.io là một nền tảng tuyệt vời nơi bạn có thể phân phối ứng dụng của mình toàn cầu. Khi ứng dụng của bạn toàn cầu, dữ liệu của bạn cần toàn cầu. Bạn có thể chạy Redis thông thường như một app Fly.io nhưng vấn đề là nó nằm trong một khu vực đơn lẻ. Mặt khác, Upstash Redis Global Database hoàn hảo phù hợp với Fly.io vì nó được sao chép toàn cầu. Hơn nữa, nhờ SDK dựa trên REST, nó không có vấn đề kết nối trong runtime không trạng thái.

Trong bài viết này, tôi sẽ tạo một ứng dụng Node.js cơ bản truy cập Upstash Redis và triển khai nó lên nền tảng Fly.io.

Thiết lập Fly.io

Thiết lập Upstash Redis

  • Tạo Global Database miễn phí trên Upstash Console
  • Sao chép REST_URL và REST_TOKEN, bạn sẽ dùng chúng ở bước tiếp theo.

Mã ứng dụng

  • Clone app hello world: git clone https://github.com/fly-apps/hellonode-builtin
  • Cài đặt phụ thuộc: npm install express @upstash/redis
  • Cập nhật server.js và thay thế url và token:
// server.js
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}!`));

Chạy và triển khai

  • Chạy ứng dụng cục bộ: node server.js

  • Khởi chạy và triển khai lên fly.io: flyctl launch

  • Bạn có thể triển khai lại app với flyctl deploy

  • Xem url ứng dụng với flyctl status

  • Bạn cũng có thể kiểm tra ứng dụng từ dashboard fly.io:

Triển khai Serverless Redis toàn cầu trên Fly.io để phân phối dữ liệu liền mạch

Kết luận

Trong bài viết này, chúng tôi đã trình diễn cách sử dụng Upstash Redis trên nền tảng ứng dụng Fly.io.

Đừng ngần ngại liên hệ chúng tôi trên GitHub, Discord và Twitter cho bất kỳ vấn đề hoặc ý kiến nào.