Domanda

Conosco il servizio web e ho alcune conoscenze sui telecomandi. Entrambi i concetti invocano metodi sulla macchina client, quindi dove sta la differenza ??

Tramite il remoting possiamo anche eseguire il metodo sul computer remoto e la stessa funzionalità può essere raggiunta anche attraverso il servizio web ..

Per favore, mi scusi se è la domanda ovvia ..

È stato utile?

Soluzione

Entrambi supportano le applicazioni distribuite.

I servizi Web sono multipiattaforma, utilizzano standard comuni e funzionano attraverso i firewall. Pensano anche in termini di messaggi, non di oggetti: invii un messaggio a un servizio e ottieni una risposta.

Il remoting è una tecnologia solo MS che non è multipiattaforma e parla in un formato binario. Pensa in termini di oggetti, si crea un oggetto sul server remoto e ci si lavora. Non funziona bene con i firewall. Anche in questi giorni i servizi remoti sono morti, gli Stati membri favoriscono WCF (che include i servizi web)

Altri suggerimenti

.NET Remoting concept è una tecnologia di comunicazione tra processi specifica Microsoft / .NET.

Il termine "servizio Web" è molto diffuso grazie al suo clamore. Ma penso che la definizione del W3C sia intesa nella maggior parte dei casi. Definisce l'uso di WSDL come descrizione dell'interfaccia e SOAP come protocollo di messaggio.

Secondo Remoting di Microsoft .NET: una panoramica tecnica su MSDN , Remoting utilizza una codifica binaria o XML. Considerando che la codifica XML utilizza SOAP. Ma per quanto ne so, non aderisce al Profilo di base WS-I . Quindi, fornisce un'interoperabilità del servizio Web estremamente limitata.

Entrambi i concetti consentono la comunicazione tra processi. Se l'applicazione utilizza solo .NET, utilizzare .NET Remoting è una buona scelta.

Tuttavia, se si prevede di fornire l'interoperabilità con altri linguaggi di programmazione diversi da quelli previsti, utilizzare i servizi Web.

I servizi Web basati su ASP.NET sono accessibili solo su HTTP. .NET Remoting può essere utilizzato su qualsiasi protocollo.

I servizi Web funzionano in un ambiente senza stato in cui ogni richiesta genera un nuovo oggetto creato per soddisfare la richiesta. .NET Remoting supporta le opzioni di gestione dello stato e può correlare più chiamate dallo stesso client e supportare i callback.

I servizi Web serializzano gli oggetti tramite XML contenuti nei messaggi SOAP e possono quindi gestire solo elementi che possono essere completamente espressi in XML. .NET Remoting si basa sull'esistenza di assembly di runtime di linguaggio comune che contengono informazioni sui tipi di dati. Ciò limita le informazioni che devono essere passate su un oggetto e consente agli oggetti di essere passati per valore o per riferimento.

I servizi Web supportano l'interoperabilità tra piattaforme e sono utili per ambienti eterogenei. .NET Remoting richiede che i client vengano creati utilizzando .NET, o un altro framework che supporti .NET Remoting, il che significa un ambiente omogeneo.

Sia i servizi remoti che i servizi Web sono modi di comunicazione tra le applicazioni.

Remoting - Nel remoting, le applicazioni coinvolte nel processo di comunicazione possono trovarsi sullo stesso computer, computer diversi in una stessa o diversa rete. Nel remoting, entrambe le applicazioni si conoscono. Un proxy di un oggetto applicazione viene creato sull'altra applicazione.

Servizi Web - La comunicazione tra applicazioni che utilizzano servizi Web è indipendente dalla piattaforma e indipendente dalla programmazione. L'applicazione che consuma il servizio web, semplicemente accede ad esso, senza bisogno di sapere come questo servizio web è stato effettivamente implementato & amp; creato.

I servizi Web sono una forma di remoting, poiché stai effettivamente eseguendo codice altrove o sulla stessa macchina al di fuori di AppDomain.

Remoting (InterProcess) sulla stessa macchina o sulla rete, è diverso nel senso che si esegue il marshalling dell'oggetto tra AppDomain / i confini della piattaforma attraverso proxy trasparenti e serializzazione. Il remoting arriva con le sue complessità e può facilmente diventare molto complesso. WCF ha reso le cose molto più semplici da mantenere. Per quanto riguarda le prestazioni, non ho confrontato entrambi gli approcci e sarei sicuramente interessato a vedere come funzionano entrambi in un contesto InterProcess. Poiché WCF può comunicare con associazioni binarie e non è limitato al protocollo HTTP.

WCF ha reso tutto molto più semplice usando Pipes per la comunicazione InterProcess.

Alla fine i servizi Web utilizzati per comunicare tramite la porta 80 (standard) HTTP e Remoting potevano comunicare tramite porte e canali predefiniti utilizzando diversi formattatori di serializzazione.

Ora sono stati aggiornati da WCF che ora fornisce metodi per questi tipi di comunicazioni.

Il remoting sta simulando il metodo estraneo invocato come metodo locale, accettando lo stesso tipo di parametri quindi tutto ciò che serve è serilazie all'oggetto e il trasferimento invocare il metodo remoto (che è nella stessa lingua o piattaforma) e fornire la risposta.

Il servizio Web (servizio SOAP) si occupa delle invocazioni di metodi multipiattaforma in termini di RPC ma è ulteriormente migliorabile utilizzando i servizi di stile del documento, qui i linguaggi o le piattaforme non sono le barriere poiché l'XML agirà da intermedio mediante il marshalling e il non-mashhill del nativo e rappresentazioni XML.

Mentre WebService è implementato su HTTP, Remoting è implementato su TCP / UDP. In questo modo, Remoting ha prestazioni migliori in termini di velocità.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top