Subject: Re: event-driven programming (was Re: Archie-Clients )
To: None <perry@imsi.com>
From: Bakul Shah <bakul@netcom.com>
List: current-users
Date: 01/29/1995 00:28:37
> Well, sort of. I've been working a lot recently with purely
> event-driven programs that deal with tens (and occassionally hundreds)
> of clients with purely callback-oriented programming styles. Provided
> you have a context structure for each user, and are used to writing
> code like this, in the end its no harder than any other style of
> programming. Its remarkably easy and lightweight to deal with lots of
> users, actually. select(2) is your friend.

But by using callback style programming won't you also be
using a single threaded implementation?  Since Unix does not
provide async. io (you can't have multiple outstanding io
requests from a single process), you will make everyone wait
in a single queue.  I'd rather have N servers where clients
are distributed evenly among all N (where N > 1).  Of
course, each of these N servers will need to use select()!

If you maintain per user contexts, you will have to play
some seteuid games.

Bakul