API Ağ Geçitleri ve ESB'ler arasındaki farklar? [kapalı]


20

Çalıştığım şirket, web hizmetlerinin yönetimi, ölçümü ve güvenliği için bazı ara katman yazılım çözümlerini değerlendiriyor. Şu anda, bu amaçla bir Kurumsal Hizmet Veri Yolu (ESB) kullanıyoruz, ancak yönetimdeki bazı harika adamlar bazı API Yönetim Orta Yazılımlarını dağıtacaklarına karar verdiler.

Bu API Yönetimi (diğer adıyla API Gateway) Çözümleri hakkında biraz araştırma yaptım, ancak gerçek ESB'ler arasındaki farkı bulamadım. Mule, WSO2, Oracle vb.'den bazı beyaz kağıtları değerlendirdim, ancak her iki ürünün sunduğu özellikler neredeyse aynı görünüyor. Soru, bir ESB'nin ESB'nin yapamayacağı ve tam tersi bir API Yönetimini nasıl yapabileceğidir? Bir API Ağ Geçidi için ESB değiştirilerek BT ​​Altyapısına hangi değer eklenebilir?


4
Yazılım Mühendisliği tartışması için "API Ağ Geçidi ile ESB arasındaki fark nedir?" Sorusu nasıl?
Francisco d'Anconia

Yanıtlar:


21

Kavramları karıştırmanın nedeni, satıcıların bunları bir pakette satmasıdır. Ama kesinlikle ayrı kavramlar.

Bir API Ağ Geçidi, herkese açık web hizmetlerinize erişimi yönetmek, izlemek ve güvenliğini sağlamak için merkezi bir erişim noktası sağlar. Ayrıca, hizmetleri tek bir ana bilgisayardan geliyormuş gibi farklı uç noktalarda birleştirmenize izin verir. Örneğin, tek bir hizmet grubunun parçası olan on farklı hizmet bitiş noktasına sahip olduğunuzu varsayalım. Hizmet tüketicilerini bir hizmet için service1.yourcompany.com'u ve diğeri için service2.yourcompany.com'u kullanmaları konusunda bilgilendirmek yerine, bunların tümünü api.yourcompany.com/service1 veya api.yourcompany.com adresine yönlendirebilirsiniz. / service2 ve ağ geçidi, istekleri uygun uç noktalara yönlendirmekten sorumlu olacaktır.

Bir ESB, uygulamaların ve hizmetlerin birbirleriyle bağlantısız bir şekilde iletişim kurmasını sağlayan dahili bir "Veri Yolu" dur. Tüm uygulamalar veri yoluna bağlanabilir ve başka bir uygulama tarafından yayınlandığında ilgilerini çeken herhangi bir mesaj alabilirler. Başka bir uygulamanın dinleyebileceği ve yanıt verebileceği kendi mesajlarını da yayınlayabilirler. Başvurular birbirleriyle doğrudan bağlantı kurmaktan sorumlu değildir, mesajlarını otobüse yayınlamakta ve ilgili tüm taraflar dinlemekte ve tepki vermektedir.

Mantıksal olarak API Ağ Geçidi bir ESB'nin yerine değil, hizmet odaklı bir mimarinin geliştirmesidir.


1
ESB'leri kullanma argümanının aynı olduğuna inanıyorum. ESB'ler merkezi erişim noktalarıdır ve farklı uç noktalardan hizmetlerin yük dengeleme, izleme, ölçme ve güvenliğini sağlayabilir. ESB'nin URL'sini bireysel hizmetlerin URL'si yerine tüketicilere de aktarabilirsiniz. Şimdiye kadar yeni bir şey yok.
dliber

ESB dahili API Ağ Geçidi harici tüketim içindir. ESB yerine dahili olarak bir API Ağ Geçidi kullanmak istiyorsanız, sizi durduracak bir şey yok sanırım.
Michael Brown

Mesele bu. ESB'lerin ve API platformlarının özelliklerinin çakışması var. Harici erişim için bir ESB veya dahili erişim için bir API platformu dağıtabilirsiniz. Özellikleri aynıysa, birini diğerinin yerine kullanmanın yararı nedir? Bunları birbirinden farklı kılan şey, diğerini (veya her ikisini birlikte) kullanmak ve işinize gerçek değer katmak için ne yapabilir?
dliber

Bir ESB'nin yüksek hacimli trafik için tasarlandığı bir şey. Genellikle tescilli veya internet dostu olmayan bir protokole sahiptir. Bir API Ağ Geçidi, İnternet protokolleri (SOAP, JSON, XML, HL7) arasında çeviri yapmak ve istekleri ESB'ye yerleştirmek için tasarlanmıştır. Temel olarak, dahili servisleriniz arasındaki iletişim için ağ geçidini kullanabilirsiniz, bu da onu en uygun hale getirmez.
Michael Brown
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.