Last post Feb 09, 2021 03:58 PM by bruce (sqlwork.com)
Jan 26, 2021 11:46 PM|robby32|LINK
My app service runs a task every minute , so a new thread is spun up every minute. Now each thread needs to process hundreds of transactions.
Ive scaled out using Custom Autoscale. So the metric i used was CPU above 50% to increase instance by 2 with a max of 10. Ithen have a scale down once it is below 30%.
What i dont understand is:
How can i see the insatcnes increase as the service is running and then see it scale back down ?
Does each new instances that is created consume its own set of memory or does it share the memory of the server, so if the server has a max capacity of 8g, then there will be 3 instances and each will use approx 2g ?
If the initial instance has gone over 50% , 2 new instances will be spun up , I assume the workload on the first instance is runninng and when the next task is spun up it will be allocated to the second instance , is that correct ?
Does each new instance created get its own ip address in a specific range ?
So is the creation of a new instance just like increasing specs of the machine ?
Feb 09, 2021 03:58 PM|bruce (sqlwork.com)|LINK
It’s depends on the technology of the service. Docker containers are a common approach, so to scale up a container is started. With some a new vm is created. some are just workloads. The azure team is always working on this to make scale out startup quicker.
in practice it a new environment with its own memory, ipaddress and resources. To monitor see