Mailing List Archive: 49091 messages
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search

[REBOL] Re: LDC goes Rugby!

From: holger:rebol at: 23-May-2001 6:13

On Wed, May 23, 2001 at 08:00:09AM +0200, Petr Krenzelok wrote:
> - once max number of simultaneous connections is reached: > > a) other copy of LOCAL Rebol could be 'launched, connected to master by TCP port > > Q: does the solution scale well? We currently have Sterling's proxy script or > Rugby available e.g., which show us we can handle connections by parts, so it > feels like "multitasking". But there is probably some limit to rebol speed, > where timeouts will get longer. So - will launching new OS task (new Rebol > instance, connected to "master" task, performing the same kind of functionality) > help to locally load balance connections handling?
Yes, somewhat, if the bottleneck is processing the requests itself. An alternative is to use load balancing in the FastCGI dispatcher.
> Other two question related to ports: > > - I noticed that Maarten used open/direct non buffered aproach? Does it have any > advantage upon using buffered ports, e.g. "blocking" issues?
open/direct is necessary in most situations because otherwise you would not get any data at all until the other end closes its connection.
> - I also noticed following piece of code. What does it do exactly, please - I > mean how does it influence port? > > set-modes conn [ async-modes: [read write]]
Don't use, don't touch, don't copy. Here there be dragons... 'async-modes is an RT-private port mode that we added temporarily for the implementation of /Express, to allow more flexibility in async socket operation. Any script using it WILL break and will have to be largely rewritten for Core 3.0. We will switch to handler-based model for async i/o then. That's why we intentionally did not document this. -- Holger Kruse [holger--rebol--com]