Multiple services or single service with multiple threads
<p>We are rewriting our .net application. Current application has 4 windows services. First service accepts requests from the UI and also updates the UI by publishing events for refreshing UI. This service internally uses 2 thrall pools with Max 16 threads each to service GUI. Any requests from UI that requires business processing is passed on to the worker process windows services(there are 2 such windows service).MSMQ is used for passing the requests back and forth between services. Fourth windows service acts like a load balancing and directs requests from first service to the workers. All services are running on the same box  </p>

<p>Now while rewriting, we would like to know if we should maintain the same architecture or can it be all clubbed into same service with separate threads. Which will be better from performance perspective.</p>