4 ms·
I haven't used Elixir yet but deployment in Erlang isn't quite that simple, though it's not bad with some of the recent tools like relx. Just musing here but if
by dxhdr 11y ago
I haven't used Elixir yet but deployment in Erlang isn't quite that simple, though it's not bad with some of the recent tools like relx. Just musing here but if you're dev environment is "scp and i'm done" then Elixir/Erlang are likely overkill for the problem at hand (Python or Ruby would probably work fine?). There is some base amount of complexity involved with working with BEAM but the features you gain in return are worth the trouble.
- biokoda 11y ago"scp and i'm done" is completely possible with Elixir/Erlang. It is how we deploy lots of erlang pages. Copy beam files, have erlang check periodically if any beam files have changed and reload them. Using erlang releases is in no way mandatory.
- dxhdr 11y agoSure I suppose that's possible but it just seems a little gross. At least with 'scp binary' your first and all subsequent deploys use the same process so tools like Ansible can help you out. I guess that's what I was referring to -- repeatable deploys; pushing a new a BEAM release package is a more involved process than just with a single binary.
- mmcclure 11y agoI totally agree, being able to just ship binaries around is fantastic. No complex process necessary, things Just Work™. However, if you're ok with a little extra process, Elixir allows for hot code reloads. To be fair, most use cases probably don't need it, but it's a pretty great option to have in your tool belt.
- hackerboos 11y agoNo more involved than deploying a ruby web app. At least the erlang/elixir has built-in support for zero-downtime-deploys. You don't have to rely on an app server like Unicorn and USR2 signals.