[Oz] Distributed webserver design question

Garibald Hennes suegar at gmx.de
Wed May 3 12:54:34 CEST 2000





Hello Oz'ers ;) ,

I'm currently looking into ideas to implement a distributed webserver in
oz.

The main design emphasis at this time is to ensure that the front-end
(i.e. computer+program) which accepts the http-request has as little
workload as possible. Everything should be delegated to back-end
processes,
working on other machines. My expectation is that this will scale well,
even if the backend processes burn loads of computing cycles per
connection.

How could this be intelligently handeled by oz?

My current idea is to have the frontend publish a port, on which the
backends put a var to
signal readiness. The frontend then puts a proxy-socket with a new
connection on the first
var it finds in the port. The backend process handles the connection (a
http/1.1  persistant
connections), possibly in a thread, and puts a new var in the frontend's
port whenever
it is ready to serve another connection.

A few questions arise:
- is this efficient? Even though i read most things about oz, and have
some
  programming experience with it, I do not know it intimately enough to
really
  decide this confidently.
- how does the oz emulator handle possibly tens of thousands of open
sockets,
  even if it has nothing else to do?
- could I just make the socket stationary in the frontend and then give
that
to the
  backend? I will probably try that as first implementation, since I don't
really see
  how a proxy-object would decrease resource use on the frontend. After
all, the
  sockets there will still need to be open, and a communications-link will
need to be
  established. Maybe that proxy idea is too much influenced by experiences
with other
  languages.

Thanks for any hint.

/ Mathias

P.S. your mailserver does not accept my mails, so I'm sending from a
different account.

--
                            virtual earth
 Mathias Picker
 Geschäftsführer      Gesellschaft für Wissens re/prä sentation mbH

                            Mathias.Picker at virtual-earth.de
			    Fon +49 89  / 540 7425-1
                            Fax +49 89  / 540 7425-9



-- 
Sent through GMX FreeMail - http://www.gmx.net

-
Please send submissions to users at mozart-oz.org
and administriva mail to users-request at mozart-oz.org.
The Mozart Oz web site is at http://www.mozart-oz.org/.





More information about the mozart-users mailing list