|
|
|
|
|
by shijie
971 days ago
|
|
We’re experiencing this at my place of work. Our backend stack is Python, and coming from an Elixir/Phoenix background, adding a durable queue to our infrastructure should be trivial but because of the nature of Python, it is all but impossible to run the queue in the same codebase and application server. Elixir and the BEAM make it so easy and pleasant to run extremely complicated infrastructure in the same codebase and in the same application context. Hard problems made easy. I miss it. |
|
It is common to have:
frontend <-JSON-> backend <-db/queue-> background jobs
Each boundary introduces complexity (marshalling / impedance mismatch / but also different HR/recruiting needs).
In Elixir you can more or less do:
front/back/background
with no boundaries or reduced boundaries (e.g. using LiveView & OBAN in the same process, even if going through Postgres as a queue).
Someone coined the term "deepstack engineer" as well recently I think, which I could draw as:
frontend <-> backend <-> background <-> machine learning
Now with Elixir you can do everything in the same process (but with isolation as required):
front/back/background/ml
And this is something I find really interesting about this stack.