The question may not be explicit for Elixir, but as we’re in ElixirForum so better we talk about things in Elixir perspective.
I am a noob, and I never deployed a distributed application, and never scaled an application to say multiple machines. I predominantly created WordPress websites with some CodeIgniter or Plain PHP websites and none of those websites ever needed to scale.
I read/watched about deploying an application in distributed manner, so I know the basic ideas and terminology, but my knowledge is blurry about the following things, (I’ll add more points as soon as they come to my mind);
- In a distributed application (an application living on multiple machines, either monolith or micro-servies based) where does the database live?
- Where does the user files live?
- Is a messaging queue required for a distributed Elixir/Phoenix application like distributed applications based on other technologies (like Rails or Flask).
- Is deploying a distributed elixir application on docker a good idea?
- If I take a course about distributed applications in other technologies, like AWS Developer: Building on AWS at Edx which uses Flask application to teach AWS, would this course benefit me if I want to use the ideas for a distributed Elixir application deployment?
- In case of deploying to dedicated bare metal servers (like Scaleway etc) instead of cloud, what things should I take care of.
I’ll be adding more points, but if you think I missed important point, please let me know about that, and please share any links which can add to my knowledge. And if there is some free course(s)/tutorial(s) please let me know about that too.
Thank you!