[Seaside] seasidehosting.st - questions, comments, tips

Yanni Chiu yanni at rogers.com
Thu Feb 23 22:42:29 UTC 2006

In what order do the accounts appear? Is it random,
process id, activity level?

I had to upgrade Seaside from 2.5 to 2.6. It was a simple
connect to SqueakSource, find the latest 2.6, and load.
I upgraded ShoreComponents as well, and chose the 2.6 version.
Then I had to downgrade to the latest 2.5 version, because
the 2.6 version used the canvas API by default. Luckily,
the latest 2.5 version works, as far as I've tested.

Seaside 2.6 was needed to set the default entry point.
The FAQs are informative, and have been updated to
clarify this point.

Here's my deployment procedure:

- sanity check of app
- use the config app to remove all entry points other
   than config and my apps
- set global deployment mode to true
   (In Seaside2.5 it was done in the config app, but in 2.6 I had
   to change WAGlobalConfiguration>>deploymentMode. I just noticed
   that the startup script seems to run WAApplication allInstancesDo:
   to set the deployment mode.)
- clear caches - you can use the config app on the deployed image
   to do this, but every time the image restarts, the cache will be
   there. Depending on your app, simple testing may leave a big cache.
- compress the image, upload using the web interface, with the
   decompress option checked. It makes things a lot faster, since
   residential internet upload bandwidth is much slower than download.
   My first upload took half an hour; afterwards I noticed the upload
   speed reported by ftp was about one-fifth my usual top download speed.
- I already have a zero length changes file, with the right name
   uploaded so I don't bother to upload the changes file. I could probably
   set the image to not require a changes file. Anyhow, I'm pretty sure
   my deployed image doesn't need a changes file since it's not saved,
   and no code gets compile, when the application runs. YMMV.
- There's no need to change server port numbers since the image startup
   changes the port number, which combined with Apache config (I imagine)
   makes the site reachable on port 80.
- My image files are already uploaded. But in devlopment, I use:

| ma seaside |
seaside := WAKom default.
ma := ModuleAssembly core.
ma serverRoot: (FileDirectory default directoryNamed: 'webroot') fullName.
ma alias: '/seaside' to: [ma addPlug: [:request | seaside process: request]].
ma documentRoot: (FileDirectory default directoryNamed: 'webroot') fullName.
ma directoryIndex: 'index.html index.htm'.
ma serveFiles.
(HttpService startOn: 9090 named: 'httpd') plug: ma rootModule

   Under the webroot directory, I have the /resources directory tree
   that I uploaded to seasidehosting. That way, I don't have to have
   Apache running to see the images, when running in development.

   Before you run the code above, make sure you stop WAKom and remove
   it from the startup/shutdown list, otherwise you'll get walkbacks,
   or complaints that port is already used. Some code:

WAKom stop
Smalltalk removeFromStartUpList: WAKom.
Smalltalk removeFromShutDownList: WAKom.

That's it for now. Hope that helps, and hope to see more running demos.

Yanni Chiu

More information about the Seaside mailing list