SOA ve ESB karşılaştırması
SOA, hizmetlerin geliştirilmesi ve entegrasyonu için kullanılan bir dizi mimari kavramdır. Hizmet, web üzerinden sunulan herkese açık bir işlevsellik paketidir. ESB, karmaşık mimarilere temel hizmetler sunmak için bir yazılım mimarisi yapısı sağlayan bir altyapı yazılımı parçasıdır. ESB, SOA'nın gerçekleştirildiği bir platform olarak kullanılabilir.
SOA nedir?
SOA (Hizmet odaklı mimari), hizmetlerin geliştirilmesi ve entegrasyonu için kullanılan bir dizi mimari kavramdır. SOA, tüketicilerin birlikte çalışabilir hizmetler kümesini tükettiği dağıtılmış bilgi işlem ile ilgilenir. Birden fazla tüketici tek bir hizmet kullanabilir veya bunun tersi de geçerlidir. Bu nedenle, SOA genellikle farklı platformlar kullanan birden fazla uygulamayı entegre etmek için kullanılır. SOA'nın düzgün çalışması için, hizmetler işletim sistemleri ve temel uygulama teknolojileri ile gevşek bir şekilde birleştirilmelidir. SOA geliştiricileri işlevsellik birimlerini kullanarak hizmetler oluşturur ve bunları internet üzerinden kullanılabilir kılar. Web hizmetleri SOA mimarisini uygulamak için kullanılabilir. Bu durumda, web hizmetleri SOA'nın internet üzerinden erişilebilen işlevselliği birimleri haline gelir. Web hizmetleri, platformlar veya bunları geliştirmek için kullanılan programlama dilleri hakkında endişe duymadan herkes tarafından kullanılabilir. SOA, hizmetin gerçek platform uygulaması hakkında endişelenmeden, kullanıcılar tarafından bağımsız olarak erişilebilen basit arayüzlü hizmetler hakkında konuşan hizmet odaklılık prensibi üzerine inşa edilmiştir..
ESB nedir?
ESB (Kurumsal Hizmet Veri Yolu), karmaşık mimarilere temel hizmetler sağlamak için bir yazılım mimarisi yapısı sağlayan bir altyapı yazılımı parçasıdır. Ancak ESB'ye mimari bir tarz mı yoksa bir yazılım ürünü mi, hatta bir grup ürün mü diye bir çağrı yapıp yapmadığı konusunda ciddi bir tartışma var. Hizmetleri, mesajlaşma için olay güdümlü ve standartlara dayalı motor (aslında servis otobüsüdür) aracılığıyla sağlar. Bu mesajlaşma motorunun üstünde, mimarların herhangi bir gerçek kod yazmadan otobüsün sunduğu tesislerden faydalanmalarını sağlamak için bir soyutlama katmanı sağlanmıştır. ESB genellikle standartlara dayalı ara katman altyapılarıyla uygulanır.
ESB'de “veri yolu” teriminin kullanılması, ESB'nin fiziksel bilgisayar veriyoluna çok benzer bir işlev sağlaması, ancak çok daha yüksek bir soyutlama düzeyinden kaynaklanmaktadır. ESB'ye sahip olmanın ana avantajlarından biri, temas noktası sayısını azaltma yeteneğidir; böylece değişikliklere adaptasyonu çok daha kolay hale getirir. ESB, SOA'nın gerçekleştirildiği bir platform olarak kullanılabilir. Dönüşüm / yönlendirme (akışla ilgili) kavramları ESB tarafından SOA'ya getirilebilir. Ayrıca, ESB uç noktalar için soyutlamayı kanıtlayarak (SOA'da), ESB hizmetler arasında gevşek bağlantıyı teşvik eder.
SOA ve ESB arasındaki fark nedir?
SOA ve ESB arasında bazı önemli farklılıklar vardır. SOA, gevşek bağlı servis tabanlı uygulamaları uygulamak için mimari bir modeldir. ESB, geliştiricilerin hizmetleri geliştirmelerine ve uygun API'ler aracılığıyla hizmetler arasında iletişim kurmasına yardımcı olan bir altyapı yazılımı parçasıdır. ESB, SOA'nın gerçekleştirildiği bir platform olarak kullanılabilir. ESB yalnızca hizmetlerin aktığı ortamdır. ESB, hizmetlerin bileşimi ve dağıtımı için olanaklar sağlar ve bu da SOA'yı uygular.