[Seaside] Seaside for large, high-traffic sites.

Joseph Harrison stoicdeveloper at hotmail.com
Fri Sep 11 09:34:03 UTC 2009


I have some questions about Seaside scalability.

In 2008 I wrote a small webapp in Seaside and overall found the experience very
enjoyable; so much so that I would prefer to do my next project in it.
Unfortunately, due to its nature, this project will receive considerably more
traffic than the last, and I am somewhat skeptical of Seaside's (and Squeak's)
ability to scale.

I understand Smalltalks (especially Squeak) use green threads for concurrency,
so obviously a single VM process handling all of those HTTP connections would
not work. Rather, the solution seems to be some sort of parallel setup with many
VM processes running simultaneously, each using green threads as needed, with
some load balancer in front of them. Do they share the same image (in which
case, I am guessing they can't save the image), or must each have its own? Next,
persistence: I need a robust alternative. It need not be a pure object database,
just something with decent performance that can scale; a mature Squeak interface
to an RDBMS like PostgreSQL would suffice. Additionally, I am curious about
64-bit Squeak and if it can work with Seaside.

Am I setting myself up for a lot of pain, or is it really practical to use these
tools with large websites? If Squeak + Seaside isn't enough, how hard is it to
drop down into C for extra performance or to call out to foreign code?

Thank you in advance.



More information about the seaside mailing list