close

Internet servisi

Navigasyona git Aramaya git

Bir web hizmeti (İngilizce, web hizmeti veya web hizmetleri ), uygulamalar arasında veri alışverişi yapmak için kullanılan bir dizi protokol ve standart kullanan bir teknolojidir. Farklı programlama dillerinde geliştirilen ve herhangi bir platformda çalışan farklı yazılım uygulamaları, internet gibi bilgisayar ağlarında veri alışverişi yapmak için web servislerini kullanabilir . Birlikte çalışabilirlik , açık standartların benimsenmesiyle sağlanır . OASIS ve W3C organizasyonları, Web servislerinin mimarisinden ve düzenlenmesinden sorumlu komitelerdir.

W3C , bir web hizmetini şu şekilde tanımlar :

Bir web hizmeti, birlikte çalışabilir bir şekilde bir ağ üzerinden makineler arası etkileşimi desteklemek için tasarlanmış bir yazılım sistemidir. Bir bilgisayar tarafından işlenebilen bir biçimde (özellikle WSDL'de ) tanımlanan bir arabirime sahiptir ve bu arabirim aracılığıyla, diğer web standartlarıyla bağlantılı olarak HTTP üzerinden XML serileştirme kullanılarak iletilen SOAP mesajlarının değiş tokuşu yoluyla onunla etkileşim kurmanın mümkün olduğu bir arayüze sahiptir. .
W3C [ 1 ]

Web hizmetlerinin farklı uygulamaları arasında birlikte çalışabilirliği geliştirmek için, bu standartları daha kapsamlı bir şekilde tanımlamak için çeşitli profiller geliştirmekten sorumlu WS-I organizasyonu oluşturulmuştur. Web istemcilerinden gelen istekleri karşılayan ve onlara istenen kaynakları gönderen bir makinedir.

Mimari

Image
SOAP Web Servisleri Mimarisi

Web hizmetleri mimarisinde üç taraf vardır: web hizmeti sağlayıcısı, web hizmetini talep eden ve yayıncı. Servis sağlayıcı, servis yayıncısına web servisinin tanımını içeren bir WSDL dosyası gönderir. Hizmeti talep eden yayıncı ile iletişime geçer ve sağlayıcının kim olduğunu öğrenir (WSDL protokolü) ve sağlayıcı ile bağlantıya geçer ( SOAP protokolü ). Sağlayıcı, hizmet talebini doğrular ve yapılandırılmış verileri SOAP protokolünü kullanarak XML formatında gönderir. XML dosyası, hizmet talep eden tarafından bir XSD dosyası kullanılarak yeniden doğrulanır .

Kullanılan standartlar

  • Web Servisleri Protokol Yığını : servisler ve web servislerinin protokolleri seti.
  • XML ( Genişletilebilir İşaretleme Dili ): değiş tokuş edilecek veriler için standart biçim.
  • SOAP ( Basit Nesne Erişim Protokolü ) veya XML-RPC ( XML Uzaktan Yordam Çağrısı ): değiş tokuşun kurulduğu protokoller.
  • Diğer protokoller: XML verileri, Köprü Metni Aktarım Protokolü ( HTTP ), Dosya Aktarım Protokolü (FTP) veya Basit Posta Aktarım Protokolü (SMTP) gibi normal protokoller kullanılarak bir uygulamadan diğerine de gönderilebilir .
  • WSDL ( Web Hizmetleri Açıklama Dili ): Web hizmetleri için genel arayüz dilidir. Web servisleriyle iletişim kurmak için gerekli fonksiyonel gereksinimlerin XML tabanlı bir açıklamasıdır.
  • UDDI ( Evrensel Tanımlama, Keşif ve Entegrasyon ): Web servislerinden bilgi yayınlama protokolü. Hangi web servislerinin kullanılabilir olduğunu kontrol etmenizi sağlar.
  • WS-Security ( Web Servis Güvenliği ): OASIS ( Organization for the Advancement of Structured Information Standards ) tarafından standart olarak kabul edilen güvenlik protokolü . Aktörlerin kimlik doğrulamasını ve gönderilen mesajların gizliliğini garanti eder.
  • REST ( Representational State Transfer ): HTTP protokolünü kullanarak , uygulama arasında farklı işlemleri gerçekleştirebilmek için yöntemlerinin (GET, POST, PUT, DELETE, vb.) her birini kullanan bir API sağlayan mimari stil . hizmet web sitesi ve istemci.
  • GraphQL, REST'e alternatif mimari.

Web servislerinin avantajları

  • Özelliklerine veya yüklü oldukları platformlara bakılmaksızın yazılım uygulamaları arasında birlikte çalışabilirlik sağlarlar.
  • Web hizmetleri, içeriklerine erişmeyi ve nasıl çalıştıklarını anlamayı kolaylaştıran metin tabanlı standartları ve protokolleri destekler.
  • Entegre hizmetler sağlamak için farklı coğrafi konumlarda bulunan farklı şirketlerden hizmet ve yazılımların kolayca birleştirilmesine izin verirler.

Web servislerinin dezavantajları

  • İşlemleri gerçekleştirmek için , CORBA ( Ortak Nesne İstek Aracısı Mimarisi ) gibi dağıtık hesaplamanın açık standartları ile gelişim dereceleri bakımından karşılaştırılamazlar .
  • Java Uzak Yöntem Çağırma (RMI), CORBA veya Dağıtılmış Bileşen Nesne Modeli (DCOM) gibi diğer dağıtılmış bilgi işlem modelleriyle karşılaştırıldığında performansı düşüktür . Metin tabanlı bir formatı benimsemenin dezavantajlarından biridir. Ve XML'in amaçları arasında özlülük veya işlem verimliliği yoktur.
  • HTTP'ye güvenerek , kuralları bariyerin her iki tarafındaki programlar arasındaki iletişimi engellemeye veya denetlemeye çalışan güvenlik duvarı tabanlı güvenlik önlemlerini atlayabilirler.

Web hizmetleri oluşturma nedenleri

Web servislerini kullanmanın temel nedeni , ağ bağlantı noktası 80'de İletim Denetimi Protokolü (TCP) üzerinden HTTP ile kullanılabilmesidir. Kuruluşlar ağlarını güvenlik duvarları (internet trafiğinin çoğunu filtreleyen ve engelleyen) ile korudukları için , neredeyse tüm TCP bağlantı noktalarını kapatırlar. tam olarak web tarayıcıları tarafından kullanılan 80 hariç . Web servisleri bu bağlantı noktasını, basit bir nedenden dolayı, engellenmezler. Web servislerinin herhangi bir protokol üzerinden kullanılabileceğini unutmamak önemlidir, ancak TCP en yaygın olanıdır.

Diğer bir neden ise, SOAP'ın ortaya çıkmasından önce , diğer ağa bağlı bilgisayarların işlevlerine erişmek için iyi arayüzlerin olmamasıdır. Mevcut olanlar, Elektronik Veri Değişimi (EDI), Uzaktan Yordam Çağrısı (RPC) veya diğer API'ler gibi geçici ve az bilinenlerdi .

Web servislerinin çok kullanışlı olmasının üçüncü nedeni, Web servisini kullanan uygulama ile servisin kendisi arasında büyük bir bağımsızlık sağlayabilmeleridir. Bu şekilde, birindeki zaman içinde meydana gelen değişiklikler diğerini etkilememelidir. Daha küçük dağıtılmış bileşenlerden büyük uygulamalar oluşturma eğilimi her geçen gün daha yaygın hale geldiğinden, bu esneklik giderek daha önemli hale gelecektir.

Önümüzdeki yıllarda sunulan hizmetlerin nitelik ve niceliğinin yeni standartlara göre artması beklenmektedir.

Platformlar

Web hizmetleri için uygulama sunucuları :

Ayrıca

Referanslar

  1. ^ "Web Hizmetleri Sözlüğü § Web hizmeti" . W3C . 11 Şubat 2004 . 24 Haziran 2018'de alındı . 

Dış bağlantılar