none
Best suitable approach to host Angular 8 application into Azure web app RRS feed

  • Question

  • Hi All,

    Have one angular 8 app and wanted to host that into azure web app as anonymous access. I have gone through all the available option while creating App Service Plan (Free, Basic, Standard and Premium V2) but confused about the best approach and plan.

    Just for your reference:

    1. Angular app is very much light (3.5 MB) after production build.

    2. All CRUD operations are happening  using logic app

    3. SharePoint list has been used for DB

    4. This app will be accessed by more than 7000 users

    5. Traffic will be very high in this app as this will be access by anonymously by anyone.

    Please help me to figure out the best web app plan with minimized pricing and high availability.

    let me know your suggestion on this.

    Thanks...

    Friday, February 14, 2020 3:53 PM

Answers

  • lalitmishra1988, please go here to continue the discussion. As Karishma mentioned, web apps is now being supported on our new Q&A platform.

    Pasting my response here though as well for your convenience.

    lalitmishra1988, before replying, I want to say only you will ultimately be able to determine the needs of your app. The below are only suggestions and should not be taken as consulting due to the number of factors that can impact the needs of your app.

    With that being said, this sounds like a production app. We typically only recommend production apps to be run on standard/premium/isolated tiers. You can see the availability SLA along with the other attributes [here][1]. The basic tier might be able to run your application but if you're concerned about availability, you might want to stick to standard tier or higher. If you only plan on running a single site on an instance, you'll likely be okay with something like a standard small (S1) instance. If you have a resource intensive site or multiple sites in your app service plan, you might consider a medium (S2) or large (S3) instance.

    You also might want to consider scaling out vs scaling up. What you talked about, basic/standard/premium is in regard to instance size. If your concern is having a high number of visitors, you might want to consider scaling out by adding more instances to your App Service Plan. This is the better approach to handling large amounts of requests rather than changing your instance size. While [this blog][2] is older, it talks about the basic concepts of when to scale up vs when to scale out.

    Since you mentioned high availability, one thing to be careful about is to not think that having two instances in the same app service plan will provide redundancy. While unlikely, if the network goes down in your data center, both instances will be unable to communicate with the internet. To resolve this problem, you would want to consider using Azure Traffic Manager (ATM), which is a load balancer that can direct traffic to multiple apps in different regions. You in theory could create a West US app and East US app and then use ATM to route traffic to whatever region is available. This option is best for mission critical sites or store fronts that could lose money caused by a single instance outage. For more information on ATM, [this is][3] a good place to start.

    Let me know if you have any further questions or concerns.

      [1]: https://azure.microsoft.com/en-us/pricing/details/app-service/plans/

      [2]: https://azure.microsoft.com/en-us/blog/scaling-up-and-scaling-out-in-windows-azure-web-sites/

      [3]: https://docs.microsoft.com/en-us/azure/app-service/web-sites-traffic-manager


    Saturday, February 15, 2020 2:22 AM
    Moderator

All replies

  • We're migrating from MSDN to Microsoft Q&A as our new forums and Azure Web apps has already made the move! 

    To ease your transition experience, we have created a forum thread on Q&A herewhere one of our specialized engineers in the subject or the Azure community members can provide the best possible answer to your scenario or question. In future, you can ask and look for the discussion for Azure Web apps related questions here: Azure Web apps

    We are actively working to onboard remaining Azure services on Microsoft Q&A. We will make a public announcement once complete. Want to Learn more about new platform: Microsoft Q&A Getting Started  


    Friday, February 14, 2020 8:23 PM
    Moderator
  • lalitmishra1988, please go here to continue the discussion. As Karishma mentioned, web apps is now being supported on our new Q&A platform.

    Pasting my response here though as well for your convenience.

    lalitmishra1988, before replying, I want to say only you will ultimately be able to determine the needs of your app. The below are only suggestions and should not be taken as consulting due to the number of factors that can impact the needs of your app.

    With that being said, this sounds like a production app. We typically only recommend production apps to be run on standard/premium/isolated tiers. You can see the availability SLA along with the other attributes [here][1]. The basic tier might be able to run your application but if you're concerned about availability, you might want to stick to standard tier or higher. If you only plan on running a single site on an instance, you'll likely be okay with something like a standard small (S1) instance. If you have a resource intensive site or multiple sites in your app service plan, you might consider a medium (S2) or large (S3) instance.

    You also might want to consider scaling out vs scaling up. What you talked about, basic/standard/premium is in regard to instance size. If your concern is having a high number of visitors, you might want to consider scaling out by adding more instances to your App Service Plan. This is the better approach to handling large amounts of requests rather than changing your instance size. While [this blog][2] is older, it talks about the basic concepts of when to scale up vs when to scale out.

    Since you mentioned high availability, one thing to be careful about is to not think that having two instances in the same app service plan will provide redundancy. While unlikely, if the network goes down in your data center, both instances will be unable to communicate with the internet. To resolve this problem, you would want to consider using Azure Traffic Manager (ATM), which is a load balancer that can direct traffic to multiple apps in different regions. You in theory could create a West US app and East US app and then use ATM to route traffic to whatever region is available. This option is best for mission critical sites or store fronts that could lose money caused by a single instance outage. For more information on ATM, [this is][3] a good place to start.

    Let me know if you have any further questions or concerns.

      [1]: https://azure.microsoft.com/en-us/pricing/details/app-service/plans/

      [2]: https://azure.microsoft.com/en-us/blog/scaling-up-and-scaling-out-in-windows-azure-web-sites/

      [3]: https://docs.microsoft.com/en-us/azure/app-service/web-sites-traffic-manager


    Saturday, February 15, 2020 2:22 AM
    Moderator
  • Thanks Bryan for this detailed information. I got your points and this will help me to figure out the end result.

    As I was also exploring other options in Azure then I got an idea to host the same SPA as a Static Web App in Azure Storage. We can also have CDN with this app associated to boost performance.

    Because, I don't have any server side execution in this app and this is simple static SPA. Please share your thoughts on this as well...

    https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-static-website 

    Saturday, February 15, 2020 4:50 PM
  • latitmishra1988, yes this would be another alternative to hosting your application. The concerns would be that if your site ever grew, you might not be able to scale out to handle additional requests in the way you can with an Azure Web App service. Also, if you change or add functionality to your site that requires server processing, you'll not only have to make the changes to your web app but then you'll need to switch Azure products as well.

    Azure Storage is a good option if you know your site won't grow in terms of users and your site will always remain static. It does provide custom domain and https support.

    In regards to pricing, you have less options than you do with Azure Web Apps.

    If you're thinking about hosting within a static web app on Azure Storage, you could probably start out on the basic tier if you go that route for lower pricing.

    Either opition has its advantages. Azure Storage is quick and easy to get going but lacks a lot of web controls and the lacks the ability to scale for the future. Azure Web Apps is slightly more expensive but can grow with your site for future needs.

    Please let me know if you have further questions or concerns.

    Tuesday, February 18, 2020 6:55 PM
    Moderator
  • This is an excellent explanation Bryan. I will surely keep this in mind. Thanks...:)
    Tuesday, February 18, 2020 7:21 PM