WEB SERVİSLERİ: Internet Devriminde İkinci Aşama?

Slides:



Advertisements
Benzer bir sunumlar
Linux ile E-ticaret Barış Özyurt
Advertisements

Web uygulamalarında yeni bir yaklaşım AJAX
Bilgisayar Ağları ve İnternet
8. SINIF 3. ÜNİTE BİLGİ YARIŞMASI
SGB.NET’İN TEKNİK ALTYAPISI
Java’da Eclipse ortaminda Axis2 ile Web Servis Uygulamasi
Universal Plug & Play (Evrensel Tak ve Çalıştır)
WEB TASARIM Temel Kavramlar.
NOKTA, DOĞRU, DOĞRU PARÇASI, IŞIN, DÜZLEMDEKİ DOĞRULAR
WEB SERVİCE İDRİS YÜRÜK MAHMUT KAYA.
WSDL -SOAP Murat tezgider
TÜRKİYE ELEKTRONİK FON ALIM SATIM PLATFORMU
.NET FRAMEWORK.
Mysql, PhpMyAdmin, PHP, Dinamik Web Sayfası, PHPNuke Kullanımı
Eğitim Programı Kurulum Aşamaları E. Savaş Başcı ASO 1. ORGANİZE SANAYİ BÖLGESİ AVRUPA BİLGİSAYAR YERKİNLİĞİ SERTİFİKASI EĞİTİM PROJESİ (OBİYEP)
HTTP’yi (istemci tarafı) kendi kendinize deneyin
İnternet Programcılığı
İNTERNET.
İNTERNET VE İLETİŞİM.
İNTERNET.
WEB SERVİS TEKNİK SUNUM
Veri ve Veri Yapıları Genel olarak bilgisayarlar.
 Meltem KORCAY  Ayşe KUBİLAY
Web Service Uygulaması
XML TABANLI B2B ÇÖZÜMLERİ
Microsoft Danışman Öğrenci
3. HTTP.
Burcu Musaoğlu Data Sistem A.Ş..
Çevre ve Orman Bakanlığı Bilgi İşlem Dairesi Başkanlığı
Proxy-DNS Nedir?.
Ankara Üniversitesi Açık Arşiv Uygulaması
Bilgisayar Mühendisliği Bölümü Bilgi Servisleri (IS) GRID Kullanıcı Eğitimi Boğaziçi Üniversitesi 2007, İstanbul Emrah AKKOYUN.
BTP 108 BİLGİSAYAR AĞ SİSTEMLERİ AĞ KAVRAMI Birden çok bilgisayarın birbirine bağlı olarak kullanılmasıyla oluşturulan çalışma biçimine bilgisayar ağı.
BBY Bilgi Teknolojisi ve Yönetimi
ORHAN EREN İLKOKULU 1-A.
Gün Kitabın Adı ve Yazarı Okuduğu sayfa sayısı
IT 504 İnternet ve Web Programlama Tanıtım Yrd. Doç. Yuriy Mishchenko.
İşletim Sistemleri Hazırlayan Hakan YİĞİT.
Strateji Geliştirme Daire Başkanlığı
İnternet Teknolojisi Temel Kavramlar
HAZİRAN ASP ACTIVE SERVER PAGES Demet AMİNCİ Selçuk YUVARLAK Yusuf ŞENEL Endüstri Mühendisliğinde Bilgisayar Uygulamaları Dersi Projesi, 2004.
.NET Teknolojileri .NET mimarisi VB.NET, C.NET, C#.NET
WEB TASARIMINDA TEMEL KAVRAMLAR
BTEP 203 – İnternet ProgramcIlIğI - I
HABTEKUS' HABTEKUS'08 3.
Açık Ders Malzemelerinde (ADM) Teknik Alt Yapı R. Orçun Madran
EV GÜVENLİK VE TAKİP SİSTEMİ UYGULAMASI
Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü C ++ Nesne.
C#.NET 5.0 C# .NET 5.0 Eğitimleri Volkan KANAT.
© 2002 by Prentice Hall 1 David M. Kroenke Database Processing Eighth Edition Chapter 1 Introduction to Database Processing.
1.HAFTA 26 Ağustos 2009 ÇARŞAMBA 2.HAFTA 01 EYLÜL 2009 SALI 3.HAFTA 09 EYLÜL 2009 ÇARŞAMBA 4.HAFTA 15 EYLÜL 2009 SALI 5.HAFTA 23 EYLÜL 2009 ÇARŞAMBA 6.HAFTA.
1.HAFTA 26 Ağustos 2009 ÇARŞAMBA 2.HAFTA 01 EYLÜL 2009 SALI 3.HAFTA 09 EYLÜL 2009 ÇARŞAMBA 4.HAFTA 15 EYLÜL 2009 SALI 5.HAFTA 23 EYLÜL 2009 ÇARŞAMBA 6.HAFTA.
ÖĞR. GRV. Ş.ENGIN ŞAHİN BİLGİ VE İLETİŞİM TEKNOLOJİSİ.
1 Öğr. B.Aliyeva Öğr. B.Aliyeva Bilgisayar Yazılımı.
İnternet Teknolojisi Temel Kavramlar
Erman Yukselturk1 PHP NEDİR? Scripting / Progralama dilidir (C’ye benzer) C ++ ortamında geliştirilmiştir Bedava / Açık Kod Hızlı, açık, dengeli (stable),
SABPO METODOLOJİSİ KULLANILARAK FIPA UYUMLU ÇOK-ETMENLİ BİR OTEL REZERVASYON SİSTEMİNİN TASARIMI VE GERÇEKLEŞTİRİLMESİ Ayşegül Alaybeyoğlu, Geylani Kardaş,
Chapter 5. Ağ Protokolleri
İKMAP İnternet 1 Ders Notu
Microsoft Windows Server 2003 © Yenilikler ERCAN SAPMAZ.
KIRKLARELİ ÜNİVERSİTESİ
XML ve XML WEB SERVİSLERİ Volkan ALTINTAŞ. XML Bağımsız bir kuruluş olan W3C tarafından tasarlanmıştır. Herhangi bir kurumun tekelinde değildir. Kişilerin.
Dünyanın bilgisine açılan pencere...
Server Yönetim Programları
DOMAIN SERVER DOMAIN NEDIR ?
MAİL SERVER Oğuz ZARCI –
Temel Internet Kullanımı Y. Doç. Dr. M. Sıtkı İlkay Ekim 2006.
Dünyanın bilgisine açılan pencere...
Amazon Web Servisleri ve Javascript Dilinin Birlikte Kullanımı
.NET Teknolojileri .NET mimarisi VB.NET, C.NET, C#.NET
Sunum transkripti:

WEB SERVİSLERİ: Internet Devriminde İkinci Aşama? Doç. Dr. Selim Akyokuş Bilgisayar Mühendisliği Bölümü Doğuş Üniversitesi Web Servisleri: Internet Devriminde İkinci Aşama, Selim Akyokuş

XML tabanlı B2B Çözümleri Giriş Web Servisleri Nedir? Web Servisleri Modeli SOAP Bir Web Servisi (SOAP) Uygulaması WSDL UDDI Web Servisi ve SOAP Uygulama Geliştirme Araçları Sonuç Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

WEB SERVİSLERİ Geçen altı yıldaki gelişmelerden sonra bugünkü web ortamı olmadan ağ tabanlı bilgi sistemlerinin düşünülmesi çok zordur. Web’in bu kadar başarılı olmasının nedeni basitlik ve yaygınlığıdır (ubiquity). Web ortamındaki gelişmeleri üç safhada inceleyebiliriz: Belge Web’i (Document Web) : Belge web’i ile web’in ilk aşamadaki kullanımı, yani HTTP protokolü ile HTML dilinde biçimlendirilmiş statik belgelerin kullanıcılara sunumunu ifade ediyor. Uygulama Web’i (Application Web) : Bu yapı işletmelerin müşterilerine web üzerinden bazı iş süreçlerini yaptırma gereksinimi sonucunda ortaya çıktı. Bu yapıda sunucu tarafında çalışan programlar (server-side programs) vasıtasıyla hazırlanan dinamik HTML belgeleri ile kullanıcı ve iş uygulaması arasında etkileşim sağlandı. Servis Web’i (Services Web) : İşletmelerin diğer işletmelerle olan iş süreçlerini bütünleştirme gereksinimi sonucunda ortaya çıkan ve gelişmekte olan yeni yapıdır. Bu yapının temel taşı web servisleridir. Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

WEB SERVİSLERİ NEDİR? Web servislerindeki temel amaç işletme bilgi sistemlerindeki program modüllerinin etkileşimini sağlamaktır. Web servisleri web ortamında yayınlanabilen, aranıp bulunabilen ve çağrılarak erişilebilen modüler uygulama fonksiyonlarıdır. Web servisleri Haziran 2000’de ortaya çıkan bir çok yazılım firması tarafından yoğun bir destek bulan modeldir. Web Servives = SOAP + WSDL + UDDI Web servisi kavramı destekcilerinden Frank Boss’a göre “İleride internet’te web sayfasından daha çok web servisi bulunacaktır.” Web servisleri modelinin yayınlaşaması için yayınlanan web servislerini indeksleyip sunan özel web servisi kayıt siteleri www.xmethods.com www.salcentral.com Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

Örnek : İş gezisi rezervasyonları İş gezisi organizasyonu için geliştirilen uygulama havayolu, otel, araç kiralama ve e-marketplace firmalarının sağladığı web servislerini çağırarak gerekli işlemleri gerçekleştirecektir. Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

Türkiye de bir Web Servisi Uygulaması Ödeme Planı bilgileri Acer Denizbank Yapılan Ödemeler Vestel . Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

Web Servisleri Web servisleri yazılım endüstrisinin “El Dorado” su olarak nitelendirilmektedir[2]. “El Dorado” bir zamanlar Amerikada altın madeni bulunduğu var sayılan herkesin aradığı hayali bir şehirdir. Internet üzerinde uygulama bütünleştirmesi için yöntem arayan bir çok yazılım geliştirici firma ve kurum web servisleri modeli konusuna yönelmişlerdir. Bu modeli destekleyen Microsoft, IBM, Sun, HP, Oracle ve daha bir çok firma bu konuda yoğun bir şekilde çalışmakta ve web servisleri yazılım ve uygulama geliştirme araçları sunmaktadır. Bu konudaki firmaların yoğun desteğinden dolayı uygulama bütünleştirmesi konusunda ortaya çıkacak hakim ortamın web servisleri modeline dayanacağı yönündedir. Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

Web Servisleri Modeli Web servisleri modeli üç ana birimin etkileşimine dayanır. Servis Sağlayıcı (Servis Provider): Servis sağlayıcı istemcilerin sağlayıcıda bulunan servislere erişimini sağlar. Servis sağlayıcı kendi sitesinde bulunan web servisleri tanımını servis kayıt birimine (service registry) kaydederek bu servisinin nasıl çağrılacağı belirtir. Servis İstemcisi (Service Requester) : Servis sağlayıcısında bulunan web servislerini çağırarak kullanan istemci uygulamalardır. Web servisinin nasıl çağrılacağı ve ilgili parametreleri servis kayıt biriminden arayarak bulur ve çağırır. Servis Kayıt Birimi (Service Registry) : Servis sağlayıcılarının yayınladıkları web servisi tanımlarını saklar ve aranıp bulunmasını sağlar. Servis sağlayıcıları servis kayıt birimini tarayarak istediği servislere hakkında bilgi alabilir. Servis kayıt birimi her servisin nasıl çağırılacağı konusunda tanım bilgileri içerir. Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

Web Servisleri Bir web servisi istemcisinin bir servis sağlayıcıdan bir servisi çağırma aşamasındaki temel adımlar: 1.      Web servisi istemcisi (SOAP Client) servis kayıt biriminden (UDDI) web servisini bulur. 2.      İstemci bir SOAP mesajı hazırlar. SOAP mesajı bir XML belgesidir. 3.      İstemci SOAP mesajını web server veya uygulama sunucusunda çalışan SOAP istek dinleyicisine gönderir. İstek dinleyici gelen isteklere cevap veren sunucu programlardır. Bu programlar bir JSP, ASP, CGI veya ISAPI programıdır. 4.      SOAP sunucu gelen SOAP mesajını parse eder ve gerekli parametreleri göndererek istenen nesnenin istenen yöntemini çağırır. 5.      Çağırılan nesnedeki yöntem çalışır ve sonuçları SOAP sunucuna’a gönderir. SOAP sunucusu gelen sonucu SOAP mesajı formatında biçimlendirerek istemciye gönderir. 6.      İstemci gelen SOAP mesajının içindeki bilgileri alarak istekde bulunan programa gönderir. Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

Web Servisleri Standartları Web servisleri açık internet standartlarına dayanır. Aşağıdaki web servisi yığıtı katmanlarında belirtilen güvenlik, iş akışı, servis kalitesi ve yönetim gibi konulardaki web servisi standartları henüz araştırma aşamasındadır. Bunların yanında bir takım temel çekirdek standartlar oluşmaya başlamıştır:  SOAP (Simple Object Access Protocol) : Intenet üzerinde web servislerini çalıştırmak için kullanılan protokol WSDL (Web Services Description Language) : Web servislerini tanımlama dili UDDI (Universal Description, Discovery and Integration) : Web servislerinin indekslenip bulunduğu kayıt servisi Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

SOAP (Simple Object Acess Protocol) SOAP uygulama bütünleştirmesi için geliştirilmiş XML ile formatlanmış bilgilerin iletişimini sağlayan bir protokoldür. Uygulama bütünleştirme için middleware olarak adlandırılan daha önce bir çok çözümler sunmuştur. RPC (Remote Procedure Call, DCOM, IIOP (Internet Inter-ORB Protocol) ve Java RMI bu çözümlerden bazılarıdır. Bu middleware çözümleri internet ortamında iletişim sağlama konusunda yetersiz kalmaktadır. Bu nedenle XML tabanlı bir protokol olan SOAP giderek yaygınlaşmaktadır. SOAP istemcilerin sunucularda olan nesne yöntemlerini çağırmasını ve sonuçların alınmasını sağlayan basit istek/yanıt (resquest/response) protokolüdür. SOAP mevcut internet altyapısında olan router, firewall ve proxy sunucularda herhangi bir değişiklik yapmadan kolayca çalışmaktadır. Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

SOAP İstemci ve Sunucu Bir SOAP uygulaması geliştirmek için istemci ve sunucuya SOAP geliştirme araçları ile birlikte gelen kütüpanelerin yüklenmesi gerekir. Bu kütüpaneler bir XML parser ve SOAP işlemicisi içerir. İstemci SOAP uygulaması bir SOAP istek mesajı oluşturarak bu isteği SOAP sunucusunda tanımlanmış servis uç noktalarından (end point) birisi tarafından çalıştırılması için gönderir. SOAP sunucu ilgili servisi çalıştırdıktan sonra SOAP yanıt mesajı hazırlar. Hazırlanan SOAP yanıt mesajı istemciye iletilir. Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

SOAP Mesajı Aşağıdaki şekil HTTP protokolü ile gönderilen bir SOAP mesajını göstermektedir. SOAP mesajı HTTP POST metodu veri paketinin içinde gönderilir. Bir SOAP mesajı bir SOAP zarfından (SOAP envelope) oluşur. SOAP zarfı opsiyonel bir SOAP başlığı (SOAP header) ve SOAP gövdesinden (SOAP body) oluşur. SOAP gövdesi çağrılacak metod, metodun içerdiği parametreleri ve verileri içerir. Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

SOAP İstek (Request) Mesajı   POST /StockQuote HTTP/1.1 Host: www.stockquoteserver.com Content-Type: text/xml; charset="utf-8" Content-Length: nnnn SOAPAction: "http://example.com/stockquote.xsd" <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body> <m:GetLastTradePrice xmlns:m="http://example.com/stockquote.xsd"> <symbol>DIS</symbol> </m:GetLastTradePrice> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

SOAP yanıt (Response) Mesajı   HTTP/1.1 200 OK Content-Type: text/xml; charset="utf-8" Content-Length: nnnn <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> <SOAP-ENV:Body> <m:GetLastTradePriceResponse xmlns:m="http://example.com/stockquote.xsd"> <Price>34.5</Price> </m:GetLastTradePriceResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

Bir Web Servisi (SOAP) Uygulaması Bu web servisi uygulaması örneği Microsoft SOAP toolkit ile gelmektedir. Microsoft SOAP toolkit : http://msdn.microsoft.com/code/default.asp?url=/code/sample.asp?url=/msdn-files/027/001/580/msdncompositedoc.xml Bu örnekteki web servisi aşağıdaki işlemleri gerçekleştirmektedir. EchoString, AddNumbers, SubtractNumbers Bu işlemler ile ilgili kod Visual Basic’te bir ActiveX dll project açılırarak bir COM nesnesi olarak derlenir ve Docsample1.dll kod dosyası oluşturulur. WSDL generator bu dosyayı kullanarak web servisi tanım dosyası (Docsample1.wsdl) ve web servis meta language (Docsample1.wsml) dosyası oluşturur. Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

SOAP Sunucu Public Function EchoString(ByVal testString As String) _ EchoString = testString End Function   Public Function AddNumbers(ByVal NumberOne As Double, _ ByVal NumberTwo As Double) _ As Double AddNumbers = NumberOne + NumberTwo Public Function SubtractNumbers(ByVal NumberOne As Double, _ SubtractNumbers = NumberOne – NumberTwo Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

SOAP İstemci 1. Option Explicit 2. 3. Dim soapClient 2.         3.       Dim soapClient 4.       set soapclient = CreateObject("MSSOAP.SoapClient") 5.       On Error Resume Next 6.       Call soapclient.mssoapinit("http://localhost/DocSample1/DocSample1.wsdl", "DocSample1", "Sample1SoapPort") 7.       if err <> 0 then 8.       wscript.echo "initialization failed " + err.description 9.       end if 10.     11.   wscript.echo soapclient.EchoString("Bob") 12.   if err <> 0 then 13.   wscript.echo err.description 14.   wscript.echo "faultcode=" + soapclient.faultcode 15.   wscript.echo "faultstring=" + soapclient.faultstring 16.   wscript.echo "faultactor=" + soapclient.faultactor 17.   wscript.echo "detail=" + soapclient.detail 18.   end if 19.     20.   wscript.echo soapclient.AddNumbers(2, 3) 21.   if err <> 0 then 22.   wscript.echo err.description 23.   wscript.echo "faultcode=" + soapclient.faultcode 24.   wscript.echo "faultstring=" + soapclient.faultstring 25.   wscript.echo "faultactor=" + soapclient.faultactor 26.   wscript.echo "detail=" + soapclient.detail 27.          end if Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

WSDL (Web Services Description Language) Bir uygulamanın bir web servisini kullanması için web servisinin nasıl çağırılacağının, arayüzünün, hangi protokollerin ve kodlama standartlarının belirtilmesi gerekir. WSDL web servisini tanımlayan bir XML belgesidir. Bir anlamda dağıtık programlamada kullanılan IDL’e (Interface Definition Language – Arayüz Tanımlama Dili) benzer. Web servisi tanımı işlemler, giren ve çıkan mesaj formatları, ağ ve port adresleri gibi bilgileri içerir. Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

WSDL (Web Services Description Language) Bir web servisi tanım belgesi aşağıdaki temel elemanları içerir: Types: mesajlarda kullanılacak veri tiplerini belirtir. Message: İletişimde kullanılacak mesajları tanımlar. PortType : Web servisinin içerdiği işlemleri (methods) ve ilgili mesajları tanımlar. Binding : İşlem ve mesajlarda kullanılacak veri formatlarını tanımlar. Port: Binding ve web adresinden oluşan servis noktasını tanımlar. Web adresi servisin çalıştırılacağı URL’dir. Service: Kullanılan port’lar kümesidir. Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

WSDL (Web Services Description Language) Types: mesajlarda kullanılacak veri tiplerini belirtir. <definitions name ='DocSample1' targetNamespace = 'http://tempuri.org/wsdl/' xmlns:wsdlns='http://tempuri.org/wsdl/' xmlns:typens='http://tempuri.org/type' xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:stk='http://schemas.microsoft.com/soap-toolkit/wsdl-extension' xmlns='http://schemas.xmlsoap.org/wsdl/'> <types> <schema targetNamespace='http://tempuri.org/type' xmlns='http://www.w3.org/2001/XMLSchema' xmlns:SOAP-ENC='http://schemas.xmlsoap.org/soap/encoding/' xmlns:wsdl='http://schemas.xmlsoap.org/wsdl/'> </schema> </types> Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

WSDL (Web Services Description Language) Message: İletişimde kullanılacak mesajları tanımlar. <message name='Sample1.EchoString'> <part name='testString' type='xsd:string'/> </message> <message name='Sample1.EchoStringResponse'> <part name='Result' type='xsd:string'/> <message name='Sample1.AddNumbers'> <part name='NumberOne' type='xsd:double'/> <part name='NumberTwo' type='xsd:double'/> <message name='Sample1.AddNumbersResponse'> <part name='Result' type='xsd:double'/> <message name='Sample1.SubtractNumbers'> <message name='Sample1.SubtractNumbersResponse'> Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

WSDL (Web Services Description Language) PortType : Web servisinin içerdiği işlemleri (methods) ve ilgili mesajları tanımlar. <portType name='Sample1SoapPort'> <operation name='EchoString' parameterOrder='testString'> <input message='wsdlns:Sample1.EchoString' /> <output message='wsdlns:Sample1.EchoStringResponse' /> </operation> <operation name='AddNumbers' parameterOrder='NumberOne NumberTwo'> <input message='wsdlns:Sample1.AddNumbers' /> <output message='wsdlns:Sample1.AddNumbersResponse' /> <operation name='SubtractNumbers' parameterOrder='NumberOne NumberTwo'> <input message='wsdlns:Sample1.SubtractNumbers' /> <output message='wsdlns:Sample1.SubtractNumbersResponse' /> </portType> Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

WSDL (Web Services Description Language) Binding : İşlem ve mesajlarda kullanılacak veri formatlarını tanımlar. <binding name='Sample1SoapBinding' type='wsdlns:Sample1SoapPort' > <stk:binding preferredEncoding='UTF-8'/> <soap:binding style='rpc' transport='http://schemas.xmlsoap.org/soap/http' /> <operation name='EchoString' > <soap:operation soapAction='http://tempuri.org/action/Sample1.EchoString' /> <input> <soap:body use='encoded' namespace='http://tempuri.org/message/' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' /> </input> <output> </output> </operation> <operation name='AddNumbers' > <soap:operation soapAction='http://tempuri.org/action/Sample1.AddNumbers' /> <operation name='SubtractNumbers' > <soap:operation soapAction='http://tempuri.org/action/Sample1.SubtractNumbers' /> </binding> Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

WSDL (Web Services Description Language) Port: Binding ve web adresinden oluşan servis noktasını tanımlar. Web adresi servisin çalıştırılacağı URL’dir. Service: Kullanılan port’lar kümesidir. <service name='DocSample1' > <port name='Sample1SoapPort' binding='wsdlns:Sample1SoapBinding' > <soap:address location='http://localhost/DocSample1/DocSample1.wsdl' /> </port> </service> </definitions> Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

UDDI (Universal Description Discovery and Integration) Bir web servisini kullanmak için kullanıcının web servisi sağlayan kurumları ve bu kurumların verdikleri web servislerinin neler olduğunu bilmesi gerekir. UDDI kısaltmasında geçen Evrensel, Tanım, Buluş ve Bütünleştirme kelimelerinin ifade ettiği gibi UDDI kurumların kendilerini ve sağladıkları servisleri yayınlayarak tanıtamalarını, ve bu bilgilerin daha sonra diğer kurumlarca taranıp bulunmasını sağlayan bir standarttır. Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

UDDI (Universal Description Discovery and Integration) UDDI Kurum Kayıt Servisleri (UDDI Business Registry) kurum ve web servisleri bilgilerini saklayan ve yayınlayan sunuculardır. Bu sunucular servis sağlayıcılarından gelen bilgilerini kendi veritabanlarına kayıt ederek diğer kurumların erişimine açar. Şu anda aktif olarak çalışan kurum kayıt sunucuları uddi.microsoft.com ve uddi.ibm.com ‘dur. Sunucular kendilerine kayıt edilen bilgileri diğer sunucularada kopyalayarak kolayca hızlı bir şekilde erişilmesini sağlarlar. UDDI sunucuları kurum ve servis kayıt, güncelleme ve tarama işlemlerini web servisleri (SOAP mesajları) ile gerçekleştirir. Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

Web Servisi ve SOAP Uygulama Geliştirme Araçları (www.soapware.org) Apache SOAP (Apache project) [Full, Java] 2.2, 2001/05/30 Web Services Toolkit (IBM, alphaWorks) [Full, Java] 2.3, 2001/05/14 GLUE [registration required] (Graham Glass) [Full, Java] 3.1, 2001/07/14 DevelopMentor SOAP (DevelopMentor) [Full, Java] 0.3, 2000/01/24 HP Web Services Platform [registration required] (HP) [Full, Java] ?, 2001/08/15 Soap Toolkit for JBuilder [login required] (Stephen Schaub) [Client, Java | JBuilder 4 | Win] ?, 2001/03/02 SOAP for BEA WebLogic [no official support] (BEA Systems) [Server?, Java? | BEA WebLogic Server] ?, ? XMLBus [registration required] (IONA Technologies) [Full, Java | iPortal AppServer, BEA WebLogic] 1.2.2, 2001/08/22 Microsoft SOAP toolkit (Microsoft) [Full, VB/C# | WinNT/2K] 2.0, 2001/04/25 Microsoft SOAP toolkit (aka ROPE) [no support] (Microsoft) [Full, VB/C# | WinNT/2K] 1.0, 2000/12 Visual Studio .NET (Microsoft) [Full, .NET | WinNT/2K/98/Me] B2, 2001/06/18 .NET Framework SDK (Microsoft) [Full, .NET | WinNT/XP/2K/98/Me] B2, 2001/06/07 SOAP::Lite (Paul Kulchenko) [Full, Perl] 0.51, 2001/07/18 DevelopMentor SOAP (DevelopMentor) [Full, Perl] 0.28, 2000/09/05 SQLData SOAP Server (SQLData) [Server, C++ | WinNT/2K] 3.01, 2001/01/25 SOAP toolkit LITE (Lucin) [Full, ?] 2.3.0, 2000/09/18 Delphi 6 (Borland) [Full, Delphi] ?, ?   Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

SONUÇ Web servisleri modeli Haziran 2000’de ortaya çıkmış ve yoğun bir ilgi ile karşılaşmıştır. Yeni nesil web uygulamaları web servisleri modeline dayanacaktır. Web servisleri ile, kurumlar işbirliği yaptığı satıcı, müşteri ve banka gibi diğer kurumlardaki iş süreçlerini birleştirerek daha iyi işlevsellik ve daha az maliyet gibi bir çok avantajlar sağlayacaklardır. Internet’te iki site www.xmethods.com ve www.salcentral.com değişik kurumlar ve kişilerce geliştirilen basit web servislerini yayınlamaktadır. Web servisleri modeli XML, SOAP, WSDL ve UDDI gibi açık internet standartlarına dayanır. Bu konudaki firmaların yoğun desteğinden dolayı uygulama bütünleştirmesi konusunda ortaya çıkacak hakim ortamın web servisleri modeline dayanacağı yönündedir. Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

SONUÇ Mevcut web servisleri modeli uygulama bütünleştirme konusunda bir takım temel yapıları içermekle birlikte bir takım eksiklikleri vardır. Bunlar güvenlik, iş akışı, servis sürekliği, servis kalitesi ve yönetim gibi konulardadır. Web servislerinin başarılı ve yaygın olarak kullanılması için mevcut modelin geliştirilerek bu konuların çözüme kavuşturulması gerekmektedir. “Hype (abartı) Curve (eğrisi)” Gartner araştırma firmasınca hazırlanan bir teknolojinin ortaya çıktıktan sonra olgunlaşarak üretkenlik aşamasına kadar olan aşamalrını göstermektedir. “Hype Curve” de görüldüğü gibi web servisleri şu anda üzerinde çok konuşulan, pazarlanan ve umut vadeden bir teknoloji olarak bu eğride “beklenti zirvesi” (Peak of Inflated Expectations) aşamasında gözükmektedir. Gartner’a göre bu teknoloji iki yıl içinde olgunlaşarak üretkenlik aşamasına geçecektir. Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş

Web Servisleri: Internet Devriminde İkinci Aşama? Sunu : http://sakyokus.ce.dogus.edu.tr/Presentations/ TEŞEKKÜRLER Doç. Dr. Selim Akyokuş Bilgisayar Mühendisliği Bölümü Doğuş Üniversitesi Web Servisleri: Internet Devriminde İkinci Aşama?, Selim Akyokuş