Multithreading

Daniel Salama dsalama at user.net
Mon Mar 28 14:49:29 UTC 2005


Avi,

I figured the concurrent user load wouldn't necessarily be too 
significant but it's great news to know that it can be load balanced. 
My question in this regards is: when you load balance Squeak, do 
multiple Squeak VMs share the same image or do they all have 
"identical" images? What happens with Seaside and session management? 
I'm sorry I ask these questions before finding out more about "pound" 
load balancer. I will dig into it and may be it does statefull load 
balancing... I don't know.

As far as GOODS is concerned, I'm not necessarily concerned about the 
bulk loading of data, since it happens only once. I'm more concerned 
with the day-to-day accessing of data. That's where my performance 
concerns fall in, when it comes to GOODS. For example, one of the most 
used queries in my app are for batched lists. Say a user wants to see a 
list of customers. The default batch size is to show 50 records at a 
time and the default sort is by customer name. Currently the user has 
the ability to sort by any of the columns in the batch list by simply 
clicking on the column title. If I understand correctly, it means that 
I would have to load all 1MM records into Squeak to sort them based on 
the user selection and then jump ahead to whichever page the user was 
looking at and then show 50 records. As most everyone know, in the SQL 
world this is easily solved by the SELECT * FROM * ORDER BY * OFFSET * 
LIMIT * command. I don't know if OmniBase supports a more efficient way 
of doing this, or even if the approach I mentioned is the most 
efficient one.

Thanks again,
Daniel

On Mar 28, 2005, at 9:32 AM, Avi Bryant wrote:

> The volume you mention (50 concurrent users, 10k txns/day) doesn't
> sound out of line.  I'd probably want a dedicated server for that,
> though.  And yes (as you asked earlier) it is possible to load balance
> Seaside apps across several servers or CPUs; I do it using some simple
> mod_rewrite rules, though the "pound" load balancer (google for it)
> would probably also work well.
>
> Whether GOODS can reasonably handle the 1M customer records you
> mention, I frankly have no idea.  Actually, one of the problems with
> the GOODS client right now is that bulk loading is extremely slow, so
> I've never had the patience to get anywhere near that much data into
> it for testing.  For production apps these days I'm using OmniBase,
> which isn't ideal (for one thing, the Squeak port of the free version
> badly needs to be brought up to date, though the commercial version
> has been), but has been solid and scalable so far.
>
> Avi
>




More information about the Squeak-dev mailing list