web servis hangi protokolü destekler etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
web servis hangi protokolü destekler etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

19 Şubat 2015 Perşembe

Web Servis Nedir Nerelerde Kullanılır ?

Visual Studio da web servisin nasıl eklendiğini, reference in nasıl gösterildiğini öğrendik peki ama bu web servis nedir? Nerelerde kullanılır? Neden tercih etmeliyiz?

Web Servis web üzerinden HTTP protokolü ile hizmet veren program parçalarıdır. Bir kullanıcının HTTP üzerinden bir web servisi kullanmasına RPC(Remote Procedure Call) denmektedir HTPP üzerinden yapılan bu çağrımlara karşı SOAP(Simple Obect Access Protocol) dediğimiz protokol XML çıktıları üretir. Veri transferi bu XML çıktıları sayesinde yapıldığı için platform bağımsız bir yapısı vardır. Web servisi kullanmak istediğiniz program parçasının hangi dilde yazıldığının pek bir önemi yoktur.Çünkü sonuçta Web servisten alacağınız veri tipi XML'dir.Bundan dolayı C# ile yazılmış bir Web Servis Java tarafından Java ile yazılan bir Web Servis .Net teknolojileri tarafından kolayca kullanılabilmektedir.Bu yazılımların çalıştıkları platformalarında pek önemi yoktur Unix üzerinde çalışan bir uygulamayla Windows üzerinde çalışan bir uygulama aynı Web Servisi sorunsuzca kullanabilirler.


Bir web servisten veri okuyup , veri almak istediğinizde bilgisayarınızda veri transferinin gerçekleşmesi için bir port açılır ve bu portan veri okunup veri gönderilir.

Bir kaç örnekle Web Servisin kullanım alanlarından bahsedelim. 
Merkez bankası hergün döviz kurlarını kendi sistemi üzerinde belirler ve bu "kur bilgisi" üzerinde işlem yapan kurumlar merkez bankasının Web Servisleri aracılığıyla gün içerisinde değişen kur bilgilerini kendi sistemlerine çekerler ve bu şekilde merkezi ve güncel bir yapının oluşması sağlanmış olur. Başka bir örnekle açıklamak gerekirse, 

Windows Messenger tarzı bir uygulama yaptınız, kullanıcılar internet siteniz aracılığıyla sisteminize kayıt oldular ve bilgileri Web Server üzerinde bulunan Database kaydedildi. Chat leşmeye başlayabilmek için'de bilgisayarlarına sizin geliştirmiş olduğunuz uygulamayı indirdiler. 

Programı başlattıkları zaman programınız giren kullanıcının kim olduğunu tespit edebilmek için bu kullanıcıdan "Kullanıcı Adı" , "Parola" bilgisi istedi.Şimdi sizin kullanıcının Client'ında bulunan uygulamanızda "Kullanıcı Adı" , "Parola" bilgisi var fakat kayıtlı olan kullanıcıların bilgisi Web Server'da arada bir iletişim kurmak lazım işte bu noktada yardımımıza Web Servisler yetişmekte. 

Yazmış olduğunuz ve Web Server üzerinde çalışan bir Web Servis'e bu parametreleri geçerek giren kullanıcının gerçekten sistem'de var olup olmadığını varsa arkadaş listesini ve benzeri bilgileri Client'a çekebilirsiniz. 

Web servisler kurumlar arası iş birliği açısından son derece önemlidir çünkü kurumlar iş birliği yaptığı satıcı , müşteri bankalar ve benzeri kurumlardaki iş süreçlerini birleştirerek daha iyi işlevsellik ve daha az maliyetle zorlu proje süreçlerini tamamlamaktadırlar. Günümüzdeki Web tabanlı projelerin büyük bir çoğunluğu dışardaki bir çok sistemle veri alışverişinde bulunmaktadır.Hastaneye gidersiniz hastane yazılımı "Sağlık Bakanlığı'nın" merkezi randevü sistemine bağlanmaya çalışır.Okula gidersiniz okul "Milli Eğitim Bakanlığı'nın" sistemine bağlanıp bilgi alışverişinde bulunmaya başlar.Özel bir firmada yazılımcı olarak işe başlarsınız yaptığınız proje gereği birlikte çalıştığınız müşterilerinizin farklı yazılım sistemleri ile paralel veri alışverişinde bulunmanız gerekir işte bu tarz işlemlerin olduğu her yerde Web Servis güçlü ve kararlı bir yapı olarak karşımıza çıkmaktadır. Web Servisler halan büyük ve kurumsal firmalar tarafından çok güçlü bir şekilde desteklenmektedir. Bundan dolayı Web Servis teknoloji halen önemini korumaktadır.


Biraz teknik olarak olayı özetlemek gerekirse.

Kullanıcı bilgisayarında yada başka bir Web Serverda çalışan bir uygulama (Bunlara "İstemci" diyoruz) Veri alışverişinde bulunmak istediği Web Servisin bulunduğu sunucuya XML formatındaki bir SOAP Mesajı (SOAP Request) gönderir.


  1. XML formatındaki SOAP Mesajını alan Web Server gelen mesajı parçalayarak istenilen Web Servise bu parametreleri geçerek ilgili Web Methodu tetikler.
  2. Web Method gelen parametrelere göre ilgili işlemleri yapıp Oluşan sonucu Web Server'a iletir.
  3. Web Method'dan yanıt bekleyen Uygulama sunucumuz gelen veriyi XML formatında hazırlayıp bir SOAP Mesajı(SOAP Response) ile İstemci uygulamaya iletir.
  4. İstemci'mizde gelen XML türündeki veriyi talepte bulunan uygulamaya göndererek aradaki bağlantıyı sonlandırır