links to this page:    
View this PageEdit this PageUploads to this PageHistory of this PageTop of the SwikiRecent ChangesSearch the SwikiHelp Guide
Seaside Load Balancing/Deployment Management System
Last updated at 9:09 am UTC on 15 March 2007


Todd Blanchard (Google Account: squeakntodd)

Project Outline

Getting a Seaside app into production is still a very labor intensive process. Load balancing is ad-hoc, and there is no ability to track the status of a number of Seaside instances.
There's need for a system Load Balancing/Deployment Management System to allow central management of a Seaside app in production.
This project might be broken down into a couple different parts. Apart from working in Squeak, there will probably be shell/ruby scripting and apache configuration scripting to do.

Technical Details

Many different web framework have peculiar load balancing and deployment management systems.
37 Signals has a system called Signal Tower; Amazon.com uses something called Apollo; WebObjects has a console for managing this. We need a similar system for Seaside that should:
  1. Allow selection of load balancing models via load factor - for instance, we might say one instance can handle 3 users.
  2. Track traffic to each instance and provide stats
  3. Be able to bring up or down instances based on traffic requirements
  4. Support pushing updates to the server remotely without the need to take it down or have a GUI available.
  5. All management functions should be doable via a web interface.
  6. Provide an installer for setting up this infrastructure quickly and easily.
  7. JMM notes the VM does supply garbage collection statistical data, yet unlike Sophie, Seaside does not heuristically tune the collector to match objectives unique to what Seaside is doing.

Benefits to the Student

Benefits to the Community