Is Fly a better Heroku than Heroku?

Is Fly a better Heroku than Heroku?

Is Fly a better Linode than Linode?

I don’t care about “edge computing”. I don’t care about having distributed app servers close to users. I don’t care about cool networking between nodes. My app servers just all connect to a single database server that needs to be nearby, so I’d prefer to just pick the closest region to me (come to Denver next, please!) and run everything there.

I work for a custom software development agency doing mostly Django applications. We are responsible for hosting a handful of client’s applications, some on Linode, other on Heroku, and some on AWS. Could Fly replace all of these?

A typical project has a development and production environment. How does this map onto Fly organizations? Each environment has a single postgres db, web workers, and worker workers. Heroku handles this with a Procfile:

web: gunicorn app.whatever
worker: python manage.py run_worker  # no network, justs gets and executes tasks from the db
release: python manage.py migrate

It’s not clear to me how to run the different process types on Fly.

Is a fly app with scale 1 and a persistent volume equivalent to a VPS?

It seems you’ve got something here that’s simultaneously lower level (more powerful) than Heroku but also easier to use.

Can you think of any reason why I, with the type of applications I work on, would be better off on Linode, Heroku, or AWS than Fly? Unless I’m missing something this seems like the general-purpose cloud provider that operates at the ideal level of abstraction.

2 Likes

That’s the goal! We don’t think most people care about edge computing. We want Fly to be a place for devs to run all their apps without relying on SRE/ops folks. Edge computing is valuable enough to make us some money while we keep improving the platform.

We don’t have a simple way to run apps with multiple process types. Once we finish off postgres, I think this will be the most important thing to work on. You can run one app per process type right now, but it means managing secrets + releases across multiple apps.

Unless I’m missing something this seems like the general-purpose cloud provider that operates at the ideal level of abstraction

I love it. Choosing the right abstractions is hard! It’s nice when we get it right.

5 Likes