Web Servisleri ve WCF Arasındaki Fark

Web Servisleri ve WCF

Hem Web Hizmetleri hem de WCF, Microsoft tarafından geliştirilen web teknolojileridir. Web Hizmetleri, .NET'in önceki sürümlerinde kullanılmaya başlanırken WCF, .NET sürümüne sonraki sürümlerde eklenmiştir. Web servisleri, HTTP üzerinden SOAP kullanarak mesaj gönderebilen / alabilen uygulamalar oluşturmak için kullanılır. WCF, herhangi bir aktarım protokolü üzerinden SOAP kullanarak mesaj alışverişi yapmak üzere dağıtılmış uygulamalar oluşturmak içindir.

Ağ hizmetleri

Web Hizmeti (bazen .NET'te ASMX teknolojisi olarak bilinir), ağ üzerinden iletişim yöntemidir. W3C'ye göre, bir Web hizmeti, bir ağ üzerinden makineden makineye işlemleri desteklemek için ayrılmış bir sistemdir. WSDL'de (Web Hizmeti Açıklama Dili) açıklanan bir Web API'sıdır ve Web hizmetleri genellikle bağımsızdır ve kendi kendini açıklar. Web hizmetleri UDDI (Evrensel Açıklama, Keşif ve Entegrasyon) protokolü kullanılarak bulunabilir. SOAP (Basit Nesne Erişim Protokolü) mesajlarını genellikle HTTP (XML ile) üzerinden değiştirerek, diğer sistemler Web hizmetleriyle etkileşime girebilir. Web hizmetleri, RPC (Uzaktan Yordam Çağrıları), SOA (Hizmet Odaklı Mimari) ve REST (Temsili Durum Transferi) gibi çeşitli şekillerde kullanılır. Web hizmetlerini geliştirmek için iki otomatik tasarım yöntemi vardır. Aşağıdan yukarıya yaklaşım önce sınıfların oluşturulması ve daha sonra bu sınıfların Web hizmetleri olarak oluşturulması için WSDL oluşturma araçlarının kullanılmasıyla ilgilidir. Yukarıdan aşağıya yaklaşım, WSDL belirtimlerini tanımlamak ve sonra karşılık gelen sınıfları oluşturmak için kod oluşturma araçlarını kullanmakla ilgilidir. Web servislerinin iki ana kullanımı vardır. Yeniden kullanılabilir uygulama bileşenleri olarak ve / veya farklı platformlarda çalışan web uygulamalarını bağlamak için kullanılabilirler.

WCF

WCF (Windows Communication Foundation), bağlı ve hizmet odaklı uygulamalar geliştirmek için birleşik bir programlama modeli sağlayan bir .NET API'dir (Uygulama Programlama Arabirimi). Daha spesifik olarak, SOA ile dağıtılmış uygulamalar geliştirmek ve dağıtmak için kullanılır. SOA, tüketicilerin hizmet tükettiği dağıtılmış bilgi işlem ile ilgilenmektedir. Birden fazla tüketici tek bir hizmet kullanabilir veya bunun tersi de geçerlidir. WCF, WS-Addressing, WS-ReliableMessaging, WS-Security ve RSS sendikasyon (.NET 4.0'dan sonra kullanılabilir) gibi gelişmiş web hizmeti standartlarını destekler. WCF istemcisi, bir WCF hizmetine bağlanmak için bir Bitiş Noktası kullanır. Her hizmetin sözleşmesini ifşa eden birden fazla uç noktası olabilir. ABC terimi, WCF hizmetinin Adres / Ciltleme / Sözleşmesine atıfta bulunmak için kullanılır. Müşteriler ve hizmetler arasındaki iletişim SOAP zarfları aracılığıyla gerçekleştirilir.

Web Hizmetleri ve WCF arasındaki fark nedir?

Web hizmetleri ile WCF hizmetleri arasında bazı önemli farklar vardır. Web servisleri, HTTP üzerinden SOPA kullanarak mesaj gönderebilen / alabilen uygulamalar oluşturmak için kullanılır. Ancak WCF, SOAP ve HTTP, TCP, adlandırılmış yöneltmeler ve Microsoft Message Queuing (MSMQ) vb. Gibi herhangi bir aktarım protokolü kullanarak mesaj alışverişi yapmak üzere dağıtılmış uygulamalar oluşturmak içindir. Web hizmetleri çok basit ve uygulanması kolay olsa da, WCF mimari olarak Web hizmetinden daha sağlamdır. Web hizmetleri yalnızca IIS'de barındırılabilir ve güvenlik sınırlıdır. Ancak WCF, IIS'de, konsol uygulamalarına sahip kendi kendini barındıran sunucularda veya Win NT hizmetlerinde veya başka bir sunucuda barındırılabilir. Ayrıca, Web hizmetlerinin aksine, WCF ikili .NET - .NET iletişimlerini, dağıtılmış işlemleri, WS- * teknik özelliklerini, kuyruğa alınan mesajları ve Dinlendirici iletişimleri destekler.