İçeriğe geç
parazade

Servis Odaklı Mimari Nedir?

İngilizce: Service-Oriented Architecture

Yayın: · Son güncelleme:

Servis Odaklı Mimari Nedir? Kısaca

Servis odaklı mimari (SOA), bir kurumdaki farklı uygulamaların işlevlerini standart arayüzlere sahip yeniden kullanılabilir servisler olarak sunduğu ve bu servislerin ağ üzerinden birbiriyle haberleştiği yazılım mimarisidir.

Servis Odaklı Mimari nedir?
İçindekiler
  1. Servis odaklı mimari nedir?
  2. SOA nasıl çalışır?
  3. Mikroservisten farkı ne?

Servis odaklı mimari nedir?

Servis odaklı mimari, kısaca SOA, 2000'li yıllarda büyük şirketlerin dağınık sistemlerini birbirine bağlamak için yaygınlaşan bir yaklaşımdır. Her uygulama, belirli bir işi "servis" olarak dışarıya açar. Diğer sistemler bu servisi, iç yapısını bilmeden standart bir arayüz üzerinden çağırır.

Örneğin bir bankada müşteri bilgisi servisi, kredi skoru servisi ve hesap servisi ayrı sistemlerde çalışabilir. Şubedeki ekran, mobil uygulama ve çağrı merkezi aynı müşteri servisini kullanır; müşteri bilgisi üç kez ayrı ayrı yazılmaz.

SOA nasıl çalışır?

Klasik SOA kurulumlarında servisler çoğunlukla SOAP protokolü ve XML mesajlarıyla konuşur. Aradaki trafiği çoğu zaman kurumsal servis yolu (Enterprise Service Bus, ESB) adlı bir ara katman yönetir. ESB mesajları doğru servise yönlendirir, biçimlerini dönüştürür ve güvenlik kurallarını uygular.

Bu merkezi yapı, farklı yıllarda farklı tedarikçilerden alınmış sistemleri ortak bir dilde buluşturur. Bir ERP, bir CRM ve eski bir muhasebe programı aynı süreçte birlikte çalışabilir.

Mikroservisten farkı ne?

İki yaklaşım da sistemi servislere böler ama ölçek ve felsefe farklıdır. SOA kurum genelinde yeniden kullanım hedefler ve servisler genellikle büyüktür; veritabanı paylaşımı sık görülür. Mikroservisler ise tek bir uygulamanın içini küçük, bağımsız parçalara ayırır ve her servis kendi verisini tutar.

Merkezi ESB zamanla darboğaza dönüşebilir. Bu nedenle yeni projelerde daha hafif API'ler tercih edilse de birçok kurumsal sistem bugün hâlâ SOA ile çalışır.

Sıkça Sorulan Sorular

SOA eski bir yaklaşım mı?

Popülerliği azalsa da bankacılık, telekom ve kamu gibi alanlarda yaygın biçimde kullanılmaya devam ediyor. Mikroservis fikri de büyük ölçüde SOA'dan türemiştir.

ESB nedir?

Enterprise Service Bus, servisler arasındaki mesajları yönlendiren, dönüştüren ve izleyen merkezi ara katman yazılımıdır. SOA kurulumlarında sistemleri birbirine bağlayan omurga görevi görür.

İlgili terimler

Mikroservis(Microservices)Mikroservis, bir uygulamanın her biri tek bir işe odaklanan, kendi başına geliştirilip dağıtılabilen ve birbiriyle genellikle API ya da mesaj kuyruğu üzerinden haberleşen küçük servislere bölündüğü mimari yaklaşımdır.SOAPSOAP (Simple Object Access Protocol), uygulamaların XML biçimindeki mesajlarla ve sıkı kurallarla veri alışverişi yaptığı bir web servisi protokolüdür. Kurumsal ve kamu sistemlerinde hâlâ yaygındır.Entegrasyon(Integration)Entegrasyon, ayrı çalışan yazılımların, sistemlerin ya da verilerin birbirine bağlanarak tek bir bütün gibi çalışmasının sağlanmasıdır. E-ticarette mağaza, kargo ve muhasebe programlarının otomatik veri paylaşması buna örnektir.Arayüz(Interface)Arayüz (interface), nesne yönelimli programlamada bir sınıfın hangi metotları sağlaması gerektiğini tanımlayan, ancak bu metotların nasıl çalışacağını belirtmeyen sözleşmedir. Günlük dilde arayüz, kullanıcının yazılımla etkileşim kurduğu ekranı da ifade eder.XMLXML (Extensible Markup Language), verileri kullanıcı tarafından tanımlanan etiketler arasında hiyerarşik biçimde saklayan, hem insan hem makine tarafından okunabilen bir işaretleme dilidir.Muhasebe(Accounting)Muhasebe, bir işletmenin para ile ölçülebilen ticari işlemlerini belgelere dayanarak kaydeden, sınıflandıran, özetleyen ve bilanço ile gelir tablosu gibi raporlar hâlinde ilgililere sunan bilgi sistemidir.