Tüm Platformlar için Hızlı Uygulama Geliştirme --->    Kitabımız...      Delphi

Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 4.5/5 - 2 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Web Service Eventing (WS-Eventing) Hakkında
#1
Merhabalar , 
tesadüf eseri WS-Eventing konusunu gördüm, bildiğimiz gibi (en azından ben böyle biliyorum) SOAP web servis uygulamaları anlık isteğe o an cevap veren mimarilere sahip sunucu tarafında bir yaşam döngüsüne sahip değiller Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol burada ise bir servis metoduna üye olunması ve gerektiğinde o servis metodunun asenkron olarak clineta bilgi PUSH etmesi gibi bir şeyden bahsediyor duyan bilen var mı ? Delphi SOAP Server uygulamaları ile bu yapıda birşey inşa edilebilir mi?
iyi çalışmalar.
Cevapla
#2
Merhaba,

Bugün şans eseri "Who's Online" kısmından konu başlığına denk geldiğim için uzun zaman sonra konuyu gündeme taşıyorum.

.NET XML servislerinin kullanımı 2 şekilde gerçekleşebiliyor hocam. İlki Web service reference dediğimiz Soap nesnesi oluşturarak talepleri alıp işleyecek nesne ve bağlantı ile doğrudan metodlara erişim imkanı sağlıyor.

Burada bahsettiğiniz yapı ise benim de merak ettiğim ancak daha önce 1 kez test için denemesini gerçekleştirdiğim olay.

Burada ise bağlantı için HTTP POST ve GET işlemlerini düzenlemek adına oluşan web service'in Client sınıfını kullanarak önce Client nesnesi oluşturuyoruz. Daha sonra Credential oluşturup her metodu Sync veya Async olarak çalıştırıp dinlemesini gerçekleştirebiliyoruz. Verileri işlerken yaşam döngüsü sonlanmayan servisin eş zamanlı veri trafiğini düşürmek ve performansını arttırmak için böyle bir yöntem izleniyor.

Stabil ve sağlıklı mı? Açıkcası .Net web service'i kullandığınız C# projesinde bile Visual Studio web referansında daha pratik kullanıma imkan sunuyor. Grafiksel arayüzü olmayan servisler için, özellikle de gelişmiş donanımlara sahip sunucular varken pek ihtiyaç olacağını sanmıyorum hocam.

Bu bana yetersiz donanımlar varken cimri cimri veritabanı tablosu tasarlanılan dönemlerden varchar(max)'ın el titremeden yazılabildiği dönemlere geldiğimizi hatırlatıyor.

Bu konu ile ilgili aktif kullanımı olan varsa yeşillendirsin buraları.
{ talk is cheap show me the code. }
Cevapla
#3
Merhaba,
Günümüzde mobil uygulamasız proje yok gibi (müşteri talepleri ve teknolojik gereksinim). 
Bir çok platformda çalışabilirlik, profesyönellik ve destek açısından, yapılacak bir uygulamanın web servis mimarisi içerisinde olması kaçınılmazdır.
Mikrosoft web servis mimarisine güvensizliğimden (yada sistem kaynaklarını bonkörce kullanmasından kaynaklı da olabilir) dolayı bu teknolojiye mesafeli duruyordum. 
Bildiğiniz gibi Delphi 10.2 sürümü ile birlikte Linux platform desteği sağlandı. Bu kapsamda bir çok test çalışmaları yaptım.  
Yakın bir zamanda geliştirdiğimiz bir uygulamanın (Daha önce de formda bahsetmiş olduğum AGS projesi) mimarik yapısından kısaca bahsedeyim. 
Linux Ubuntu üzerinde PostgreSQL veri tabanı ile çalışan bir Web servis uygulaması (WebBroker/WebServer/Apache dynamic link module) yazdık. 
Client uygulamaları tüm isteklerini JSON ile gerçekleştiriyor. Yanıtlar yine sunucu uygulaması tarafından değerlendirilerek, JSON ile yanıt veriliyor (RESTfull). 
Sunucu uygulaması ve veri tabanı Linux sunucu üzerinde çok hızlı çalışıyor. Sonuçlar/iletişim de JSON olunca hız sorunu ortadan kalkıyor.
Bu sitemden önceki mobil uygulama sürümünün ilk açılış hızı 12-15 sn. idi. Şu an (Linux/PostgreSQL/WebBroker sunucu/Json) Android uygulamalarda 4-5 sn. iOS 2-3 sn.
İmkanınız var ise naçizhane tavsiyem; performans ve konfigürasyon kolaylığı açısından Linux sunucu üzerinde çalışan web servis mimarilerini kullanın.
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla
#4
Merhaba;
İlk mesajdaki soruyu doğru anlamışsam cevabı Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol. Delphi'de resmi destek henüz yok lakin ücretli/ücretsiz kütüphaneler mevcut. Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol "Fully functional multithreaded WebSocket server according to RFC 6455" iddiasında bir kütüphane mevcut. Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol da Indy'nin geliştiricisi tarafından, Indy 10 ile geliştirilmiş open source bir kütüphane mevcut.
Cevapla
#5
(10-11-2017, Saat: 17:45)sddk Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlMerhaba;
İlk mesajdaki soruyu doğru anlamışsam cevabı Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol. Delphi'de resmi destek henüz yok lakin ücretli/ücretsiz kütüphaneler mevcut. Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol "Fully functional multithreaded WebSocket server according to RFC 6455" iddiasında bir kütüphane mevcut. Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol da Indy'nin geliştiricisi tarafından, Indy 10 ile geliştirilmiş open source bir kütüphane mevcut.

Öncelikle teşekkürler, 
Tabi farklı teknolojiler mevcut bu iş için, ancak bildiğimiz SOAP WebServis uygulaması ile mümkünlüğü üzerine bu konuyu açmıştım. Yoksa SOAP değil REST olarak kurguladığımız da DataSnap in "CallBack"  yapılarıyla da bu şekilde bir çalışma mekanizması sağlanabiliyormuş.
Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  CrossVCL hakkında sadettinpolat 19 1.543 01-03-2017, Saat: 22:11
Son Yorum: sadettinpolat



Konuyu Okuyanlar: 1 Ziyaretçi