Remoting is a technology based on communication between one
or more different application domains in a distributed environment. It means
this enables objects residing on the same domain or computer, else spread among
different domains or computers worldwide, to be accessible by each other and
they can communicate and transfer data among each other. Normally, this follows
the client server architecture of a centralized server application and its
multiple client applications.
.NET Remoting without using IIS Server
As you know, we can implement remote server and client
objects in different type of applications. For example, Console application,
Windows Form based application, and Windows Services. In this case, we need to
implement security options, authentication and authorization in the
application.
.NET Remoting using IIS Server
To implement the remote client object in ASP.NET web
application we have to setup the remote server object in the IIS Server. In
this case, we do not need to implement security options, authentication and
authorization, since the application would be able to use security features
provided by IIS as these would be hosted in the IIS.
Which one to use, when and why?
We should go for IIS hosted remoting if we require one or
more points among the following:
·
We want to use the remote server object to be accessible by web
client applications (ASP.NET clients).
·
If webservice has slow performance on processing large or complex
data.
·
We do not want to bother about implementing security,
authentication or authorization in the code.
·
IIS setting at server are more scalable than stand alone
application and have proxy backup servers.