19.12.2025

Node.js ile Mikroservis Mimarisi Kurma

Node.js kullanarak mikroservis mimarisi ile ölçeklenebilir uygulamalar geliştirin.

Node.js ile Mikroservis Mimarisi Kurma

Mikroservis mimarisi, büyük ve karmaşık yazılımların daha küçük, bağımsız parçalar halinde geliştirilmesine olanak tanır. Node.js, hafif ve hızlı bir yapı sunarak bu mimarinin gerçekleştirilmesinde ideal bir tercihtir. Bu yazıda, Node.js ile mikroservis mimarisi kurmanın temel adımlarını inceleyeceğiz.

1. Mikroservis Nedir?

Mikroservis, tek bir uygulamanın birden fazla bağımsız servis olarak bölündüğü bir yazılım mimarisidir. Her bir mikroservis, belirli bir işlevi yerine getirir ve diğer mikroservislerle REST API veya mesajlaşma protokolleri aracılığıyla iletişim kurar.

2. Neden Node.js?

Node.js, asenkron yapısı ve olay tabanlı mimarisi sayesinde yüksek performans sunar. Ayrıca, JavaScriptin hem sunucu hem de istemci tarafında kullanılması, geliştiricilerin becerilerini daha iyi kullanmasına olanak tanır. Bunun yanı sıra, npm ile yüzlerce paket ve kütüphaneyi kolaylıkla projelerinize entegre edebilirsiniz.

3. Mikroservis Yapısı

Mikroservis mimarisi genellikle aşağıdaki bileşenlerden oluşur:

  • API Gateway: Tüm isteklerin geldiği noktadır. İstemcilerden gelen istekleri ilgili mikroservislere yönlendirir.
  • Servisler: Her mikroservis kendi işlevini yerine getirir ve veritabanı ile etkileşimde bulunabilir.
  • Veritabanları: Her mikroservis, bağımsız çalışabilmesi için kendi veritabanına sahip olabilir.

4. İlk Projemizi Oluşturalım

Adım 1: Proje Klasörleri

Öncelikle, mikroservislerinizi barındıracak bir klasör yapısı oluşturmalısınız. Örneğin:

/my-microservices
  /api-gateway
  /user-service
  /product-service

Adım 2: API Gateway Oluşturma

api-gateway klasöründe basit bir Express uygulaması oluşturun:

cd api-gateway
npm init -y
npm install express axios

Ardından index.js dosyasını oluşturup aşağıdaki kodu ekleyin:

const express = require(\'express\');
const axios = require(\'axios\');
const app = express();
const PORT = 3000;

app.get('/users', async (req, res) => { const response = await axios.get('http://localhost:4000/users'); res.send(response.data); });

app.listen(PORT, () => { console.log(API Gateway running on port ${PORT}); });

Adım 3: User Service Oluşturma

user-service klasörüne geçin ve benzer şekilde bir servis oluşturun:

cd user-service
npm init -y
npm install express

index.js dosyasına aşağıdaki kodu ekleyin:

const express = require(\'express\');
const app = express();
const PORT = 4000;

const users = [{ id: 1, name: 'Ali' }, { id: 2, name: 'Ayşe' }];

app.get('/users', (req, res) => { res.send(users); });

app.listen(PORT, () => { console.log(User Service running on port ${PORT}); });

Adım 4: Uygulamayı Çalıştırma

Her iki servisi de ayrı terminal pencerelerinde çalıştırın:

npm start // user-service için
npm start // api-gateway için

Artık API Gateway üzerinden kullanıcı verilerine ulaşabilirsiniz! Tarayıcınıza gidip http://localhost:3000/users adresini ziyaret edin ve user-service üzerinden dönen verileri görün.

Sonuç

Node.js ile mikroservis mimarisi oluşturmak, ölçeklenebilir ve yönetilebilir uygulamalar geliştirmenin harika bir yoludur. Asenkron yapısı ve geniş ekosistemi sayesinde geliştirme sürecini hızlandırabilirsiniz. Elbette burada bahsettiğimiz yapıyı daha da karmaşıklaştırmak ve özellik eklemek mümkün; Microservices, Docker gibi araçlarla entegre edilerek daha güçlü hale getirilebilir.

Mikroservis mimarisi ile ilgili daha fazla bilgi edindikçe, projenizde daha fazla özgürlük ve esneklik elde edeceksiniz. Denemekten çekinmeyin!