3. Ajanda
Web Servis Nedir
Web Servis Mimarisi
Web Servis Çeşitleri
SOAP – based Web Servisler
REST - based Web Servisler
SOAP vs. REST
Uygulama Üzerinde Örnekler
4. Web Servis Nedir ?
Basit bir ifade ile, iki uygulama arasındaki iletişim,veya
elektronik cihazların world wide web üzerinden iletişimi.
Veya istemci (client) ve sunucunun ( server) world
wide HTTP üzerinden iletişimi.
Ağ üzerinden erişebilir işlemlerin standard XML mesaj
formatı ile yapılmasını sağlayan bir arayüzdür.
Uygulamaların harici olarak dağıtık bileşenleridir.
Dil ve platformdan bağımsızdır.
Yaygın kabul edilmiş web service standartları
XML mesajlaşması ( Basit veya SOAP )
Metro (java.net projesi )
WSIT (Web Services Interoperability Technologies )
destekler.
7. 1 - REST-based
• RESTfull servisler olarak bilinir.
• HTTP tek protokoldür.
o GET, PUT, POST, and DELETE
• Web Kaynakları URI olarak ifade edilir.
• Her bir işlem veya doküman için eşsiz URI oluşturulur.
• Verileri değişimi için ;
o XML ( basit ) NOT SOAP XML!
o JSON
o HTML
• Bir çok durumda Tarayıcı client olarak hareket edebilir.
• Güvenlik önemli olmayan uygulamarda kullanırlar.
• Project Jersey ( Netbeans support )
8.
9. 2 - SOAP-based
• Ağır yüklü uygulamalarda karmaşık işlemler için.
• Eğer uygulamalarınız ;
o
o
o
o
Gelişmiş Güvenlik
Güvenilirlik
WS-* standards-supported
HTTP den fazlasına ihtiyaç duyarsınız , JMS and SMTP gibi.
o
o
o
o
JAX-RPC üzerine implemente edilmiştir.
Annotations, web servis yazımını kolaylaştırıır.
SOAP formatında mesaj
WS-* Spesifikasyonlarını destekler
• WS-Security
• WS-ReliableMessaging
• WSDL bazlı
• XML format (SOAP)
• JAX-WS şu an ki kulllanılan standard.
• Binding WSDL to Java with JAXB
10.
11.
12. REST vs. SOAP ( 1 )
• REST servisler tamemen stateles, Buna rağmen SOAP her
hem stateles hemde stateful olabilir.
• REST http üzerinden get kullandığı mevcut olan HTTP
caching mekanizmasını kullanır ve bu da performansı
arttırır. SOAP ta ise cache ihtiyacınızı kendiniz karşılamanız
gerekiyor.
• REST da bir standart olmadığı için konuşan sistemlerin bir
birlerinin içeriklerini tanımaları gerekir ona göre iletişim
kurabilirler. Ama SOAP ise her türlü ortam ile iletişim
kurulabilir.
• REST daha çok kısıtlı cihazlar için daha kullanışlı olabilir,
çünkü bir çok SOAP bileşeni ( header,fazladan
parametreler ) yük getirmez.
• REST servisler SOAP a göre daha basit implementasyonu
vardır.
13. REST vs. SOAP ( 2 )
• WSDL bir dizi yaygın kuralları
(messages,binding,operation,locastion wsdl ) belirler,
buda platform bağımsız iletişimi sağlar.
• SOAP RESTe göre daha az code gereksinime duyar, bu
gerçekte ortamdaki uygulamaların daha karmaşık işlemler
gerektiğini düşünürsek bunların geliştiricinin çok fazla
düşünmemesini sağlar. ( transaction,security,coordination,
addressing vb. )
• SOAP web servisler ( JAX-WS ) asynchronous işlemlerde
kullanışlıdır.
• SOAP bir çok protokol ve teknoloji yi destekler (
WSDL,XSDs,SOAP ,WS-Addressing vs. )
• Eğer canlı ortamda complex uygulamalar yazıyorsanız
SOAP daha yarayışlı, daha hafif çözümler ihtiyacınızı
karşılıyor ise REST tercih edebilirsiniz. ( CRUD gibi )