Help for application server design with cost savings

Pavel yannara Mirochnitchenko 12,371 Reputation points MVP

I am designing Windows Server in Azure to run specific non-critical application. This application requires ram and multiple vcpu and also its reference files are big sizes. I am also trying to minimize cost, so cheap price is important here.

I have been running this already in 2vcpu 4-8gb ram and it is not enough. I also had to reallocate the server to another region for better response times but now after playing few month with it, I wanted to do this from scratch.

I have few questions or consideration I would like to get second opinion. But also feel free comment anything.

Here also some facts of the app instance;

  • Non-business critical
  • Security is irrelevant
  • Network communication with client via public internet
  • Need continuous big files updates, upload on local disk
  • Will be running 24/7 online


  1. Azure spot discount sounds interesting. Looking for price difference, if I am not mistaken, I can get the server for 1/4 price comparing to static montly payement. Is that so?
  2. After few reinstalls and scripting of the app I came up with idea, that I would have secondary HDD disk with app files, and I could re-allocate it between servers, if I want to play around and re-create the server all over again. I assume I can de-attach and re-attach the disk from server to another?
  3. Again for cost savings, I am thinking about to create new server with small local disk and attach bigger HDD disk to it for the application. HDD usage is fine with application.
Azure Virtual Machines
Azure Virtual Machines
An Azure service that is used to provision Windows and Linux virtual machines.
7,379 questions
{count} votes

2 answers

Sort by: Most helpful
  1. JimmySalian-2011 41,961 Reputation points


    The considerations are good however I will suggest you to re-evaluate the Security point as this is critical and any loose ends will cause incidents related to Security. So please include this as a top priority such as VNET, NSG rules and Firewall to block the access from unwanted regions.

    Also check this blog for VM Optimisation and selection -

    Hope this helps.



    Please Accept the answer if the information helped you. This will help us and others in the community as well.

    0 comments No comments

  2. Prrudram-MSFT 22,921 Reputation points

    Hello @Pavel yannara Mirochnitchenko ,

    Thank you for reaching out to the Microsoft Q&A platform.

    Based on the details you provided, here are my recommendations:

    Azure Spot Instances: Azure Spot Instances can be a cost-effective option for running non-critical workloads. Spot Instances allow you to take advantage of unused Azure capacity at a significantly reduced cost compared to regular instances. However, keep in mind that Spot Instances can be interrupted with little notice if Azure needs the capacity back. So, it's important to have a plan in place to handle interruptions, such as using availability sets or scaling sets to ensure high availability.

    Secondary HDD Disk: Yes, you can detach and reattach a disk from one server to another. This can be a good option if you want to recreate the server or move the disk to a different server. However, keep in mind that detaching a disk from a running server can cause data loss or corruption, so it's important to shut down the server before detaching the disk.

    Small Local Disk with Bigger HDD Disk: This can be a good option for cost savings, as long as the application can run on a smaller local disk. You can attach a larger HDD disk to the server to store the application files. However, keep in mind that the larger disk will be billed separately from the server, so make sure to factor in the cost of the disk when calculating the overall cost.

    Overall, it's important to balance cost savings with performance and reliability. Make sure to choose the right instance size and disk configuration to meet the needs of your application, and consider using availability sets or scaling sets to ensure high availability and handle interruptions.

    Hope this helps.

    Please "Accept as Answer" and Upvote if the answer provided is useful, so that you can help others in the community looking for remediation for similar issues.

    0 comments No comments