<div dir="ltr">Let me see if I can explain this.<div><br></div><div>When getting into <span class="" id=":od.1" tabindex="-1" style="">Erlang</span>, I start to think more within the system. Say, a long file upload could be done in a process, periodic tasks could be running in the <span class="" id=":od.3" tabindex="-1" style="">VM</span> instead of <span class="" id=":od.4" tabindex="-1" style="">cron</span>, you could have a key-value store in memory, etc. In the context of web development, for example, I think of natural ways to leverage processes that in other systems would normally be delegated to external services.</div><div><br></div><div>Kinda what the famous table in Elixir in Action has, I guess.</div><div><br></div><div>But there's something that bugs me and prevents me from imagining complete and round solutions, which is shutting down. When shutting down (think <span class="" id=":od.5" tabindex="-1" style="">autoescaling</span>, deploys, etc.). I have a live system that needs to stop orderly.</div><div><br></div><div>Are there patterns or best practises about how to design this aspect of the system?</div><div><br></div></div>