2. THIS IS MESS
FOUNDED IN 2007
WEB, MOBILE, SOCIAL, DESKTOP, IOS, ANDROID
4 DESIGNERS + 4 DEVELOPERS
1.25 ADMINS (ME + DAN)
4 SITES A MONTH
WAY MORE IN “MAINTENANCE”
64.2% DJANGO
http://www.thisismess.com
3. I OWN MESS.
I DO NOT WORK FOR HEROKU
…and kinda hate their support guys.
21. IT’S KINDA, WELL…DUMB
IT’S JUST EC2
…SO IT GOES DOWN WITH EC2
…AND WITHOUT IT
…AND YOU CAN’T DO NATIVE WEBSOCKETS
…AND IT GETS PRICEY
…AND MYSQL SUCKS ON IT (so?)
…AND UWSGI HAS PROBLEMS
…AND THERE’S NO PERMANENT STORAGE
…AND IT USES MICROS ON EC2 turns out they use linux containers or something.
…AND LOGGING IS…LESS THAN AWESOME
…AND PSQL IS KINDA SLOW
…AND THEIR SUPPORT SUCKS
…AND YOU DEPLOY WITH GIT
23. 1. GET GOING
CREATE AN ACCOUNT https://heroku.com
DOWNLOAD THE TOOLBELT https://toolbelt.heroku.com
INSTALL BREW http://mxcl.github.com/homebrew/
INSTALL GIT brew install git;
INSTALL VIRTUALENV sudo easy_install virtualenv;
INSTALL PIP sudo easy_install pip;
INSTALL PSQL http://postgresapp.com
GENERATE SSH IDENTITY http://google.com
ADD PUBLIC KEY TO HEROKU https://dashboard.heroku.com/account
24. 2. MAKE AN APP
START A PROJECT mkdir heroku-app;
cd heroku-app;
git init;
DO THE VENV virtualenv .env --distribute;
source .env/bin/activate;
INSTALL THINGS INTO THE VENV
pip install Django psycopg2 dj-database-url;
pip install boto django-storages South;
DJANGO! DJANGO!
django-admin.py startproject herokuapp .
35. WHATEVER WEIRD CONTAINER THING THEY USE
MICROS ARE FINE
IF YOU NEED MORE PERFORMANCE heroku ps:scale web=2;
36. YOU’RE A LOG
WHY AREN’T YOU USING SENTRY? http://getsentry.com/
INSTALL RAVEN
pip install raven;
pip freeze > requirements.txt;
SETTINGS.PY
# Set your DSN value
SENTRY_DSN = 'https://XXXXX:XXXXX@app.getsentry.com/1111'
# Add raven to the list of installed apps
INSTALLED_APPS = INSTALLED_APPS + (
# ...
'raven.contrib.django.raven_compat',
)
37. PSQL? EC2!
MAKE A HIGH-MEMORY INSTANCE ON EC2 http://google.com
SET DATABASE_URL ENV
heroku config:set DATABASE_URL=postgres://xxx.aws.com:xxx/xxxx
THIS WORKS FOR ANYTHING
HEROKU’S PSQL IS ACTUALLY PRETTY GREAT