Rumah > hujung hadapan web > tutorial js > Ips teratas untuk Menambahkan Apl Express.js Anda untuk Prestasi Sepantas Kilat

Ips teratas untuk Menambahkan Apl Express.js Anda untuk Prestasi Sepantas Kilat

Mary-Kate Olsen
Lepaskan: 2024-11-25 09:00:14
asal
143 orang telah melayarinya

Top ips to Supercharge Your Express.js App for Lightning-Fast Performance

Express.js ialah salah satu rangka kerja paling popular untuk membina aplikasi Node.js. Sifatnya yang ringan menjadikannya pantas, tetapi apabila apl anda berkembang, kesesakan prestasi boleh menjalar masuk. Dalam blog ini, saya akan berkongsi lima petua praktikal untuk mengoptimumkan apl Express.js anda untuk kelajuan dan kebolehskalaan.

1. Optimumkan Penggunaan Middleware

Perisian tengah ialah tulang belakang mana-mana apl Express.js, tetapi perisian tengah yang tidak perlu atau dilaksanakan dengan buruk boleh memperlahankan keadaan.

Hanya muatkan perisian tengah yang diperlukan: Elakkan perisian tengah global untuk laluan yang tidak memerlukannya.
Contoh: Gunakan penghurai badan hanya pada laluan yang menjangkakan muatan JSON.

const express = require('express');
const app = express();
const bodyParser = require('body-parser');

// Use body-parser only for specific routes
app.post('/api/data', bodyParser.json(), (req, res) => {
  res.send('Data received');
});

Salin selepas log masuk

2. Leverage Caching

Caching mengurangkan keperluan untuk pertanyaan pangkalan data berulang atau panggilan API. Alat seperti pengepala cache redis atau HTTP boleh meningkatkan masa tindak balas secara mendadak.

Contoh dengan Redis:

const redis = require('redis');
const client = redis.createClient();
const app = require('express')();

app.get('/api/resource', (req, res) => {
  const cacheKey = 'resource';
  client.get(cacheKey, (err, cachedData) => {
    if (cachedData) {
      res.send(JSON.parse(cachedData));
    } else {
      const data = fetchDataFromDatabase(); // Simulated DB call
      client.setex(cacheKey, 3600, JSON.stringify(data)); // Cache for 1 hour
      res.send(data);
    }
  });
});

Salin selepas log masuk

Caching HTTP:

app.use((req, res, next) => {
  res.set('Cache-Control', 'public, max-age=3600'); // Cache for 1 hour
  next();
});

Salin selepas log masuk

3. Gunakan Mampatan

Muatan muatan yang besar boleh melambatkan masa tindak balas. Mendayakan pemampatan Gzip boleh mengurangkan saiz muatan dan meningkatkan kelajuan.

const compression = require('compression');
const express = require('express');
const app = express();

app.use(compression()); // Compress all routes

Salin selepas log masuk

Tambahan ringkas ini boleh mengurangkan saiz tindak balas sehingga 70%!

4. Optimumkan Pertanyaan Pangkalan Data

Pertanyaan pangkalan data yang perlahan selalunya menjadi punca utama di sebalik prestasi apl yang lemah.

Petua:

  • Indeks medan yang sering ditanya dalam pangkalan data anda.
  • Gunakan penomboran atau had untuk set data yang besar.
  • Elakkan masalah pertanyaan N 1 dengan menggunakan gabungan atau pengambilan kelompok. Contoh dengan Mongoose:
const User = require('./models/User');

// Instead of fetching all users
app.get('/users', async (req, res) => {
  const users = await User.find().limit(20).skip(0); // Use pagination
  res.send(users);
});

Salin selepas log masuk

5. Dayakan HTTP/2 dan Gunakan CDN

HTTP/2 membenarkan pemultipleksan dan pemampatan pengepala, mengurangkan kependaman untuk aset statik. Memadankan ini dengan CDN mempercepatkan lagi penghantaran dengan menyimpan cache aset statik lebih dekat dengan pengguna.

Persediaan untuk HTTP/2 dengan Express:

const http2 = require('http2');
const fs = require('fs');
const express = require('express');

const app = express();
const options = {
  key: fs.readFileSync('./ssl/key.pem'),
  cert: fs.readFileSync('./ssl/cert.pem'),
};

http2.createSecureServer(options, app).listen(8443, () => {
  console.log('HTTP/2 server running on port 8443');
});

Salin selepas log masuk

Dengan mengurus perisian tengah, caching, memampatkan respons dan mengoptimumkan pertanyaan pangkalan data dengan cekap, anda boleh meningkatkan prestasi dengan ketara. Laksanakan petua ini dan pastikan apl anda berjalan dengan pantas!

Jika anda mendapati blog ini membantu, tekan ikon ❤️ dan ikuti saya untuk mendapatkan lebih banyak petua dan helah JavaScript!

Atas ialah kandungan terperinci Ips teratas untuk Menambahkan Apl Express.js Anda untuk Prestasi Sepantas Kilat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan