From: Gerd S. <in...@ge...> - 2002-03-25 00:34:17
|
Hello list, I recently developed a new server type for web applications that are connected by the JServ protocol to the web server. This type (`Process_pool) starts a fixed number of worker processes that can serve requests at the same time. The worker processes do neither fork nor any other potentially expensive action whean they accept a request, as they immediately begin processing the current request. Every worker processes the requests it can get sequentially. This server type is especially designed for highly loaded servers with several CPUs. The server model is the same as that of the Apache web server with the exception that Apache can dynamically start and stop worker processes. I have focused on the simpler version with a fixed number of processes to get started with this type of servers. To create such a server, call the function Netcgi_jserv_app.run with the server type `Process_pool. The rest works like for the other types. There is also an example, add_procpool.ml This means we have now three JServ server types (and classic CGI). The types are: - `Sequential: A single process gets all requests sequentially - `Forking: for every request a new subprocess is spawned - `Process_pool: every request is forwarded to a free process from a pool of available servers I have plans to develop a fourth type, `Thread_pool, that has a pool of available worker threads instead of processes. Gerd -- ---------------------------------------------------------------------------- Gerd Stolpmann Telefon: +49 6151 997705 (privat) Viktoriastr. 45 64293 Darmstadt EMail: ge...@ge... Germany ---------------------------------------------------------------------------- |