Fastify.js ve MongoDB Entegrasyonu Nasıl Yapılır?


Fastify.js ve MongoDB Entegrasyonu Nasıl Yapılır?

Giriş: Fastify.js ile Modern Web Geliştirme

Son yıllarda yüksek performanslı Node.js frameworklerinden biri olan Fastify.js, geliştiricilere hızlı ve kolay bir şekilde web uygulamaları inşa etme imkânı sunuyor. MongoDB ise esnek yapısı ve ölçeklenebilirliğiyle modern web projelerinde tercih edilen NoSQL veritabanlarının başında geliyor. Bu makalede, Fastify.js ve MongoDB entegrasyonu adım adım ele alınacak ve bu güçlü ikilinin nasıl bir arada kullanılabileceği detaylarıyla açıklanacaktır.

Fastify.js ve MongoDB Nasıl Birlikte Çalışır?

Fastify.js ve MongoDB entegrasyonu için birkaç farklı yöntem kullanılabilir. En popüler yöntemlerden biri mongoose veya mongodb npm paketlerinden destek almaktır. Aşağıda, Fastify.js ile MongoDB'nin doğrudan bağlantısı örnek kod ile gösterilmiştir. Burada fastify-mongodb eklentisi kullanılmıştır. Bu sayede proje içerisinde kolayca CRUD işlemleri yapılabilir.

Başlangıç: Gerekli Paketlerin Kurulumu

npm install fastify fastify-mongodb

Sunucu Kurulumu ve MongoDB Bağlantısı

const fastify = require("fastify")({ logger: true });
fastify.register(require("fastify-mongodb"), {
  forceClose: true,
  url: "mongodb://localhost:27017/denemeDb"
});

fastify.get("/kullanicilar", async (request, reply) => {
  const collection = fastify.mongo.db.collection("kullanicilar");
  return await collection.find({}).toArray();
});

const start = async () => {
  try {
    await fastify.listen({ port: 3000 });
    console.log("Sunucu 3000 portunda çalışıyor!");
  } catch (err) {
    fastify.log.error(err);
    process.exit(1);
  }
};
start();

MongoDB ile CRUD İşlemleri

// Kullanıcı ekleme örneği
fastify.post("/kullanicilar", async (request, reply) => {
  const collection = fastify.mongo.db.collection("kullanicilar");
  const result = await collection.insertOne(request.body);
  return { id: result.insertedId };
});

Sonuç: Performanslı ve Esnek Tam Entegrasyon

Fastify.js ve MongoDB entegrasyonu sayesinde Node.js ile hem performanslı hem de ölçeklenebilir web API'leri geliştirmek mümkündür. Bu entegrasyon, kısa sürede minimum konfigürasyon ile çalışır hale gelebilir ve geliştiricilere modern uygulamalar için büyük avantaj sağlar. Projenizin ihtiyaçlarına göre, farklı MongoDB eklentileri ve ek güvenlik yapıları ekleyerek mimarinizi daha güvenli ve sürdürülebilir kılabilirsiniz.