Stunt on Heroku

2 views
Skip to first unread message

Todd Sundsted

unread,
Apr 16, 2013, 3:38:03 AM4/16/13
to MOO Talk
I just released preliminary/experimental support for running a Stunt |
Improvise server on/in the Heroku cloud. The demo app is:

http://stunt-test-1.herokuapp.com/

The app is running the latest release of the Stunt server and a very
slightly modified version of Improvise (I think ~3 lines of changes).

The buildpack is here:

https://github.com/toddsundsted/heroku-buildpack-stunt

and a suitable project template (with changes) (based on the latest
Improvise) is here:

https://github.com/toddsundsted/stunt_test_1

(note that this project template will disappear at some point in the
near future, once I roll the changes into Improvise itself).

Since Heroku doesn't persist process state/changes, and may kill
active processes without warning, the end-game here is to provide some
level of support for transparently serializing instances of MOO
objects to a fast, shared persistent store (Postgres? MongoDB? Redis?)
and to move interaction with the server to a web interface (rather
than the common TCP/telnet interface). Players will never know what
instance of the actual server they are dealing with, nor will they
care.

I was actually a little surprised at how well this worked. As I write
this, I have three separate browser sessions for three different users
hitting the same Heroku dyno instance. Long-polling for the web
console is working (as was the console). I was able to hit the Stunt
package repository and install a few packages (so outbound network
connections work). I can read from the Heroku filesystem. The log is
available via "heroku logs".

In theory, this buildpack could work with LambdaMOO, given a suitable
core and installed web-server object. I'll leave it to some other
interested party to work all that out.

All in all, I just moved one _big_ step closer to where I want to take
MOO.

Todd

Shan Hollen

unread,
Apr 16, 2013, 9:59:09 AM4/16/13
to moo-...@googlegroups.com
Fantastic stuff, Todd! This is something I've wanted to see but
couldn't do myself.

Thanks to you and everyone who continues to expand and support the
MOO platform.

-Shan
Reply all
Reply to author
Forward
0 new messages