Rumah >hujung hadapan web >tutorial js >Kongsi rangka kerja web Nodejs: Fastify

Kongsi rangka kerja web Nodejs: Fastify

青灯夜游
青灯夜游ke hadapan
2022-08-04 21:23:152889semak imbas

Artikel ini akan berkongsi dengan anda Nodejs rangka kerja web: Fastify Saya akan memperkenalkan secara ringkas ciri yang disokong oleh Fastify, pemalam yang disokong oleh Fastify dan saya harap ia akan menjadi berguna kepada semua orang!

Kongsi rangka kerja web Nodejs: Fastify

Kebanyakan rangka kerja web bahagian hadapan adalah berdasarkan nod. fastify tidak terkecuali.

Perbandingan prestasi rangka kerja web bahagian hadapan

Jika ini benar-benar berlaku, adakah anda gembira untuk mencuba fastfy? ?

Tanda Aras

Mesin: EX41S-SSD, Intel Core i7, 4Ghz, 64GB RAM, 4C/8T, SSD.

Kaedah: : autocannon -c 100 -d 40 -p 10 localhost:3000 * 2, mengambil purata kedua

Rangka Kerja Versi Penghala? Permintaan/saat
Express 4.17.3 14,200
hapi 20.2.142,284
Tetapkan semula 8.6.1 50,363
Koa 2.13.0 54,272
Framework Version Router? Requests/sec
Express 4.17.3 14,200
hapi 20.2.1 42,284
Restify 8.6.1 50,363
Koa 2.13.0 54,272
Fastify 4.0.0 77,193
-


http.Server 16.14.2 74,513
Kencangkan
4.0.0 77,193
- td>


http.Server 16.14.2 74,513

Ciri yang disokong oleh Fastify

  • Prestasi tinggi: Sila lihat jadual di atas.
  • Boleh Diperluas: Mencapai kebolehskalaan melalui cangkuk, pemalam dan penghias
  • Berasaskan skema: Tidak wajib menggunakan Skema JSON untuk mengesahkan konfigurasi penghalaan anda masa, ia akan menjadi mudah untuk menyusun dengan pantas.
  • Log: Gunakan Pino untuk merekod log dan mengurangkan kerugian.
  • Mesra pembangun: Ia mesra pembangun, dan juga mempertimbangkan serta mereka bentuk prestasi dan keselamatan.
  • TypeScript sedia: Disokong TypeScript

Fastify disokongpemalam

Sehingga kini, pemalam 48 Teras , 179 pemalam komuniti

Kongsi rangka kerja web Nodejs: Fastify

Jadi, bagaimana untuk menggunakannya?

Memulakan

Buat projek

npm install --global fastify-cli
fastify generate myproject

Memulakan projek

npm init -y fastify

Pasang kebergantungan

#npm 
npm i fastify

#yarn 
yarn add fastify

hello-world

Segerakkan pemulangan

// ESM
import Fastify from 'fastify'
//const fastify = Fastify({
  //logger: true
//})
// CommonJs
const fastify = require('fastify')({
  logger: true
})

// Declare a route
fastify.get('/', (request, reply) => {
  reply.send({ hello: 'world' })
})

// Run the server!
fastify.listen({ port: 3000 }, (err, address) => {
  if (err) throw err
  // Server is now listening on ${address}
})

Pulangan tak segerak

// ESM
import Fastify from 'fastify'
const fastify = Fastify({
  logger: true
})
// CommonJs
//const fastify = require('fastify')({
  //logger: true
//})

fastify.get('/', async (request, reply) => {
  reply.type('application/json').code(200)
  return { hello: 'world' }
})

fastify.listen({ port: 3000 }, (err, address) => {
  if (err) throw err
  // Server is now listening on ${address}
})

Cara menggunakan pemalam

fastify.register(plugin, [pilihan] ) , untuk penggunaan lebih lanjut, anda boleh klik pada pautan untuk menghantarnya, lompat ke pautan dan cuba~

Kongsi rangka kerja web Nodejs: Fastify

const fastifySession = require('fastify-session')

fastify.register(fastifySession, {
    cookieName: 'sessionId',
    secret: 'a secret with minimum length of 32 characters',
    cookie: { secure: false },
    expires: 1800000
})

更多使用

相关link

更多node相关知识,请访问:nodejs 教程

Atas ialah kandungan terperinci Kongsi rangka kerja web Nodejs: Fastify. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:juejin.cn. Jika ada pelanggaran, sila hubungi admin@php.cn Padam