[interfacekit] Re: Proposal: Only one thread per application(not windo= w) on app_server side without polling

On Sat, 26 Jul 2003 18:55:42 +0200 Massimiliano Origgi <
origgi@xxxxxxxxxxxx> wrote:
> >> Anyway I think that this simpler solution would benefit the whole 
> >> system 
> >> performance and even make the app_server simpler to write and 
> >> maintain.
> 
> >I'm not so sure about that. Having a direct connection between an 
> > app 
> >server and an application entity seems to be a very straight forward 
> >model. At least not more complex than to multiplex/demultiplex the 
> >communication.
> 
> The main advantage lies in the reduced usage of 'critical' system 
> resources 
> (threads, semaphores, ports) and reduced need of synchronization of a 
> possibly big number of threads.

I already gave the answer to the last part: multiplexing/demultiplexing 
the communication doesn't make things easier. In case you have one 
thread per CPU, I even tend to think it becomes more complex, because 
you still need synchronization and additionally have to take care, that 
messages are processed in the correct order. So you probably end up 
queuing the messages first, which requires a kind of scheduling to be 
implemented.

Regarding the `critical' system resources, I believe, they are 
reasonably cheap.

> >> While we are at it, i just read the other posts regarding 
> > > rendering 
> >> and I 
> >> have a few ideas to discuss with you:
> >> app side rendering is a nice idea as it would reduce the load on 
> > > the 
> >> app_server, which in turn would 'just' have to coordinate shared 
> >> resources. 
> >> Clearly hardware acceleration must be available on the app side.
> 
> >I don't think, it's a good idea to move too much functionality of 
> > the 
> >app server into the applications. A clear client/server approach 
> > will 
> >e.g. make it easier to transparently implement the feature of 
> > running 
> 
> It wouldn't be different, I mean the code which does rendering in the 
> app_server right now would be 'moved' to the app side, but would 
> provide 
> equivalent functionality.

That's the point. It will make it impossible to run the application on 
a remote machine.

CU, Ingo


Other related posts: