Rumah >hujung hadapan web >tutorial js >Penjejakan Lokasi Masa Nyata dengan Node.js dan Pulsetracker's Redis Pub/Sub
Pengenalan
Penjejakan lokasi masa nyata adalah di tengah-tengah banyak aplikasi moden, daripada perkhidmatan penghantaran kepada alat penjejakan peribadi. Pulsetracker memudahkan proses ini dengan menawarkan pelayan Redis Pub/Sub khusus yang membolehkan pembangun melanggan kemas kini lokasi masa nyata pada bahagian belakang. Dalam panduan ini, kami akan menunjukkan cara membina aplikasi Node.js yang mendengar kemas kini ini dan memproses data lokasi dalam masa nyata.
Mengapa Pulsetracker?
Pulsetracker menghapuskan kerumitan membina bahagian belakang untuk penjejakan lokasi masa nyata. Ia menyediakan infrastruktur berskala dengan pilihan dan ciri yang memfokuskan privasi seperti penghantaran WebSocket, penyepaduan Redis Pub/Sub dan tetapan privasi boleh dikonfigurasikan.
Mengapa Node.js?
Node.js ialah pilihan yang sempurna untuk aplikasi masa nyata kerana seni bina yang tidak menyekat, dipacu peristiwa. Menggunakan Redis Pub/Sub dalam Node.js membolehkan anda mengendalikan strim data masa nyata dengan cekap.
Jalankan arahan berikut untuk memasang pustaka Redis yang diperlukan:
npm install ioredis
Buat fail .env dan tambah konfigurasi Pulsetracker Redis anda:
(Dapatkan APP_KEY dan TOKEN anda daripada papan pemuka pulsestracker)
PULSETRACKER_REDIS_URL=redis://redis-sub.pulsestracker.com:6378 APP_KEY=YOUR_APP_KEY TOKEN=YOUR_TOKEN
Berikut ialah contoh skrip Node.js untuk mendengar kemas kini lokasi:
const Redis = require("ioredis"); require("dotenv").config(); // Configuration const redisUrl = process.env.PULSETRACKER_REDIS_URL; const appKey = process.env.APP_KEY; const token = process.env.TOKEN; // Generate the signature function generateSignature(appKey, token) { const crypto = require("crypto"); const [prefix, secret] = token.split("|"); if (!secret) throw new Error("Invalid token format"); const innerHash = crypto.createHash("sha256").update(secret).digest("hex"); return crypto.createHmac("sha256", innerHash).update(appKey).digest("hex"); } const signature = generateSignature(appKey, token); const channel = `app:${appKey}.${signature}`; // Connect to Redis const redis = new Redis(redisUrl); console.log(`Subscribing to channel: ${channel}`); redis.subscribe(channel, (err, count) => { if (err) { console.error("Failed to subscribe:", err); process.exit(1); } console.log(`Successfully subscribed. Waiting for messages...`); }); // Listen for messages redis.on("message", (channel, message) => { console.log(`Received message ${message}`); });
Cara Ia Berfungsi
node subscriber.js
Contoh LOG :
npm install ioredis
Kesimpulan
Penyepaduan Redis Pub/Sub Pulsetracker menjadikannya mudah untuk membina aplikasi penjejakan lokasi masa nyata yang mantap. Dengan Node.js, anda boleh memproses kemas kini ini dalam masa nyata, membolehkan operasi hujung belakang yang lancar untuk apl anda.
Terokai dokumentasi Pulsetracker untuk mengetahui lebih lanjut tentang cirinya dan mula membina penyelesaian penjejakan berskala hari ini!
Atas ialah kandungan terperinci Penjejakan Lokasi Masa Nyata dengan Node.js dan Pulsetracker's Redis Pub/Sub. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!