4 ms·
Ask HN: Is deploying Erlang web applications to a public PaaS viable?
For the sake of argument, let's assume Heroku. Although plenty of buildpacks exist, many are outdated or have various idiosyncrasies in how they mandate project structure and environments, though this can be addressed by modification.
Practical Erlang deployments have all been complicated, large-scale endeavors, involving multi-node setups, clustering and so forth.
Yet the deployment and provisioning convenience of a PaaS cannot be understated, despite the inherent loss of flexibility and being subordinate to high level quotas set by the provider.
I know for a fact that hosting Erlang apps on Heroku means you lose said multi-node advantages, along with incurring limits on concurrent connections.
My question is: Is it worth it for an end-user facing web app built on the platform with rather special considerations that is Erlang (whether it be driven by a raw web server like Cowboy or Yaws, or a framework such as N2O, Nitrogen or Chicago Boss) to be hosted on and withstand moderate traffic on a PaaS like Heroku, or will the operations and debugging costs prove too great? What detailed list of caveats must I be aware of? Any successful stories of such setups?
Thank you in advance.
- JoachimSchipper 12y agoI have no serious experience with Erlang, but what are you looking for? E.g. if you're running a chat server that keeps all data in-process, Erlang _is_ your platform, and PaaS isn't much more convenient than a cloud or a dedicated server. If you want to pay someone to manage PostgreSQL and Redis clusters for you, a PaaS provider may be more interesting. Do note that AWS offers a _lot_ of services; using e.g. AWS RDS isn't going to lock you in worse than using Heroku.
- vezzy-fnord 12y agoA rather standard CRUD app backed by PostgreSQL. If I were using Mnesia, I'd go the IaaS route and do sysadmin/ops work manually, most likely. Thanks for the heads-up.
- fenollp 12y agoCheck out this French company https://www.clever-cloud.com/en/ https://www.clever-cloud.com/en/ They have support for Erlang although I don't see it advertised there anymore.
- toast0 12y ago> I know for a fact that hosting Erlang apps on Heroku means you lose said multi-node advantages, along with incurring limits on concurrent connections. Why would you choose Erlang, and then remove some of its major advantages? You may be able to postpone a lot of operational complexity by just scaling up the hardware on a single server (or a single pair of servers). You can do a lot with a 2690 and 512GB of ram, and it's not that expensive to build.