1

I own a pretty simple WebApp, based on php/mysql/redis/nginx.

I was trying to move the server to Azure, to see if I could save some money, and today I created a WebApp on Azure using the wizard UI of it.

The first issue I noticed is that the Web API calls faced a huge increase in response time, compared to AWS hosting, even for a single ping. I decided to benchmark code execution time and network time (on browser), with multiple tests:

A simple request with no Database queries or any Redis connection took:

  • AWS (*******.eu-central-1.elasticbeanstalk.com/ping) 400ms (code exec 379ms)
  • Azure (********.azurewebsites.net/ping) 1.6s (code exec 329Ms)

Cloud configurations are as following:

  • AWS:

    • Region: EU-Central (Frankfurt)
    • EC2: t3.micro
    • Amazon linux
    • Nginx
  • Azure:

    • Region: West Germany Central
    • WebApp Instance: Premium General purpose 8Gb Ram, 4CPU (I tried different combination but it did not help)
    • Linux (cannot recall which)
    • Nginx

I tried searching and changing configurations, but I was not able to have the same network response, Azure resulted always slow, mediumly over the 1.3 seconds per request, while AWS was always around 500ms per request.

The full web app uses API Gateway and Redis to cache in front of MySQL, but the connection to those impacted almost nothing on the total code execution (20ms more or less).

Why there is such a difference, is that something I am missing in the setup?

7
  • Such a big increase in response time with basically no processing on the backed is strange. I would look at ways that Azure lets you troubleshoot log traffic to see where the time is being spent. One thing that comes to mind is distributed file system that's used by with azure websites. But for a simple ping I think it shouldn't matter. Commented Oct 16, 2023 at 3:27
  • How many kilometers are you from AWS hosting site? How many kilometers are you from Azure hosting site? Commented Oct 17, 2023 at 18:38
  • Additional DB information request from Azure host, please. Azure instance type? , any SSD or NVME devices on MySQL Host server? Post TEXT data on justpaste.it and share the links. From your SSH login root, Text results of: A) SELECT COUNT(*) FROM information_schema.tables; B) SHOW GLOBAL STATUS; after minimum 24 hours UPTIME C) SHOW GLOBAL VARIABLES; D) SHOW FULL PROCESSLIST; E) STATUS; not SHOW STATUS, just STATUS; G) SHOW ENGINE INNODB STATUS; for server workload tuning analysis to provide suggestions. Commented Oct 17, 2023 at 18:41
  • @WilsonHauck, I have exscluded any DB connection or Redis connection. Just a simple ping. Both Azure and AWS setup are in EU central regions, my self I am in Ireland Commented Oct 18, 2023 at 0:13
  • Have you run tracert from Ireland to Azure host? Commented Oct 18, 2023 at 0:58

0

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.