jswny
Advantages of umbrella applications?
I would like to better understand what the advantages/disadvantages of umbrella applications are compared to structuring your app as as single OTP application.
This isn’t specific to Phoenix but let’s use Phoenix as an example. Why would I create a separate Phoenix app in an umbrella over the regular structure where the domain logic is just organized separately from the web logic (the Phoenix part). Elixir/OTP has supervision trees which even keep these isolated from the rest of the application in terms of what gets run.
Most Liked
gregvaughn
An umbrella project (not “umbrella application”) can offer multiple releases. If you don’t need that, then they don’t offer much that can’t be achieved in other ways.
christhekeele
To elaborate, each umbrella application gets built into an individual release, which is deployed separately. This is useful, for example, if you have a web app umbrella app and a background job umbrella app. They can use the same configuration, dependencies, common code, and build process in the same repo, but then their releases can be deployed and scaled separately according to their unique resource consumption needs.
wolf4earth
We did an episode on ElixirMix a while ago on exactly this topic.
Popular in Discussions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #advent-of-code
- #elixirconf-us
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #performance









