So I am going to move this away from the Power Up community to the Dataverse side but I am going to answer.
An Environment is based on 2 things
1) the dataverse that is there (and I will explain more in a moment)
2) the apps, security , flows you name it
You should think about Environments as completely separate "entities" where in each separate one you can have different ALM, you can have different users have different roles etc.
So when you ask what makes them different.
Its like .... if you have 10 different VMs. They could be essentially built the same, but then you configure permissions, apps, you name it differently. So the base is the same, it can see the Tenants Security Groups and Azure Stuff all the same (initially) and then you tweak it depending on what you want.
now as for your question of how do i know it will handle a production load.
This is more complicated in some ways and just as easy in another.
If you are running Dataverse Apps, D365, F&O etc in one environment, then the Dataverse DB space will need to be larger, your file storage large and your transaction logs larger. These are things you can manage by shifting resources from one environment to another via the Power Platform Admin Center
or buy more capacity and then add it to that Environment.
Scale is based on
-Amount of Data
-The Apps you install (some suck up tons of space)
-Whether Apps are compatible together. Many of the D365 Platform Apps CANNOT run in the same environment, so you HAVE to create different ones to do different organizational business functions
You cannot turn UP CPU's like you can in a VM, so its pretty much Space, space, space and if you have the clout lol to get Microsoft to put you on bigger hardware.
But that is the difference and reason for separate environments.
If these suggestions help resolve your issue, Please consider Marking the answer as such and also maybe a like.
Thank you!
Sincerely, Michael Gernaey