2013-10-08 17 views
18

Zastanawiam się, czy mogę zrobić to samo zarówno z .net remoting i WCF, to dlaczego WCF jest bardziej preferowany niż .NET remoting. Gdzie mogę wybrać (lub w jakiej sytuacji) .Net Remoting lub WCF?.Net Remoting versus WCF

+0

Można użyć 'Array' do przechowywania jednorodnych elementów danych to dlaczego' Collections' jest preferowana ?? –

+0

ponieważ Array może przechowywać tylko jeden typ danych, ale kolekcje mogą przechowywać typy danych zdefiniowane przez użytkownika !! – Saveen

+0

Co przez to rozumiesz? Array może przechowywać wszystko, co może zrobić kolekcja. Pod maską kolekcji używa wewnętrznych tablic –

Odpowiedz

19

.NET Remoting aplikacje mogą korzystać z protokołu HTTP, TCP i protokołów SMTP natomiast WCF można używać nazwanych potoków i MSMQ a wraz z wszystkich tych protokołów.

można znaleźć odpowiedź tutaj: From .NET Remoting to the Windows Communication Foundation

Zawarcie

Jak widać, migracja z .NET Remoting do WCF nie jest zadaniem trzeba się bać . W przypadku większości aplikacji prosty trzyetapowy proces może przynieść aplikację na nową platformę. W większości przypadków, będziesz musiał jedynie zaznaczyć kontrakty interfejsu z [ServiceContract] i [OperationContract], twoimi strukturami danych z [DataContract] i [DataMember] i może zmienić niektóre części twojego modelu aktywacji na podstawie sesje zamiast obiektów aktywowanych przez klienta, .

Jeśli zdecydujesz, że chcesz skorzystać z funkcji z Windows Communication Foundation, pełna migracja z .NET Remoting do WCF powinny być zatem dość łatwe zadanie dla większości zastosowań.

Można również znaleźć różnica wydajności między tymi dwoma w A Performance Comparison of Windows Communication Foundation (WCF) with Existing Distributed Communication Technologies

Podczas migracji rozproszonych aplikacji napisanych z ASP.NET Web Services, GPW, .NET Enterprise Services i .NET Remoting do WCF, Wydajność jest co najmniej porównywalna z innymi istniejącymi technologiami komunikacji rozproszonej Microsoft . W większości przypadków wydajność jest znacznie lepsza w przypadku WCF niż w przypadku innych istniejących technologii. Inną ważną cechą WCF jest to, że wydajność przepustowości jest z natury skalowalna od procesora uni do procesora quad .

Podsumowując wyniki, WCF jest 25% -50% szybciej niż ASP.NET Web Services, a około 25% szybciej niż .NET Remoting. Porównanie z usługą .NET Enterprise Service jest zależne od obciążenia, ponieważ w jednym przypadku wartość WCF wynosi prawie 100% szybciej, ale w innym scenariuszu jest ona o prawie 25% wolniejsza. Dla implementacji WSE 2.0/3.0, migracja ich do WCF będzie oczywiście zapewniać najbardziej znaczące zyski wydajności prawie 4x.

+3

Dziękujemy za wysiłek. – Saveen

+2

@ saveen: - Nie ma za co! –

+0

Nie można .NETRemoting do komunikacji rurowej za pomocą IpcChannel (ipc: //)? – Alex

1

WCF (Windows Communication Foundation), który ma kodową nazwę Indigo, jest technologią, za pomocą której oprogramowanie może komunikować się ze sobą.

Windows Communication Foundation składa się z kilku nowych zestawów klas dodanych do drugiej wersji, wersji 2.0 biblioteki biblioteki Microsoft .NET Framework.

Podaje funkcję usług sieciowych oraz .Net Remoting. Patrząc na rdzeń - Windows Communication Foundation dostarcza szablon fabryki oprogramowania do komunikacji oprogramowania, składający się z języka modelowania zwanego Modelem Serwisu oraz struktury programistycznej zwanej Warstwami Kanałów. Można konfigurować punkty końcowe zdefiniowane przez adres, powiązanie i umowę właśnie za pomocą pliku konfiguracyjnego.

źródłem jest WCF

+1

Proszę, jeśli zamierzasz skopiować/wkleić odpowiedź ze strony internetowej, podaj jej nazwę. W przeciwnym razie plagiatujesz. Źródło: "[* What is WCF? *] (Http://www.c-sharpcorner.com/blogs/what-is-wcf1)" na rogu C#, przez [Vishal Mehra] (http: //www.c -sharpcorner.com/members/vishal-mehra3). –

+0

Tak. Odesłałem go ze strony internetowej. Źródłem Btw jest [WCF] (https://sites.google.com/site/dotnetbydeepak/home/difference-between-wcf-webservices-and-remoting) –

+0

dziękuję za poradę i doceniam to.^_^Właśnie edytowałem odpowiedź powyżej. –