IIS provides automatic activation that
means the service is not necessary to be running in advance. When any
message is received by the service it then launches and fulfills the
request. But in case of self hosting using netTCP the service should always be
running.
If IIS finds that a service is not healthy
that means if it has memory leaks etc, IIS recycles the process. Ok let
us try to understand what is recycling in IIS process. For every
browser instance, a worker process is spawned and the request is
serviced. When the browser disconnects the worker, process stops and you
loose all information. IIS also restarts the worker process. By
default, the worker process is recycled at around 120 minutes. So why
does IIS recycle. By restarting the worker process it ensures any bad
code or memory leak do not cause issue to the whole system.
In case of self-hosting both the above
features, you will need to code yourself. Lot of work right!!. That is
why IIS is the best option for hosting services until you are really
doing something custom.
Loading
