[Seaside] Increasing the performances of a Seaside application
philippe.marschall at gmail.com
Sun May 29 08:55:50 UTC 2011
2011/5/28 Mariano Martinez Peck <marianopeck at gmail.com>:
>> > What are the errors that I must avoid making ?
>> AFAIK SqueakDBX uses FFI which to my understanding means that it calls
>> block the entire VM. That reduces the amount of concurrency a single
>> image can handle. It also makes a connection pool more important.
> Yes, FFI blocks the whole VM while a functions is being called. However, if
> and only if the database client library supports asynchronous queries,
> SqueakDBX will work asynchronously. Basically, we do a loop where we ask the
> backend if the query was ready. If it was not, we do a yield (we let other
> process of the image to run) and then continue the loop.
How do you avoid turning this into busy awaiting and still manage to
get woken up when data is available?
More information about the seaside