1. mike S
  2. PowerServer
  3. Wednesday, 14 August 2024 15:49 PM UTC

Anyone have any suggestions on a way to measure the latency and overall network performance between the powerserver app and the web api server?  within a powerserver application?

 

We have some users that appear to have poor internet performance - although their cable provider claims they have 256-500mb speed (download)

Ronnie Po Accepted Answer Pending Moderation
  1. Wednesday, 14 August 2024 17:38 PM UTC
  2. PowerServer
  3. # 1

Hey Mike,

This might be too simplistic, but a ping from the command prompt at your user's PC might shed some light. (That's what the kids do on their gaming PCs lol...)

 

Comment
  1. mike S
  2. Wednesday, 14 August 2024 18:07 PM UTC
Not sure, but the ping is blocked (or returns prior) to getting to the webapis as i am using front door to make the apis faster. looking more for an idea of a rest api type of call. it would be nice to have it as part of powerserver web apis, i think they have a few system tests already built into them.

  1. Helpful
There are no comments made yet.
Armeen Mazda @Appeon Accepted Answer Pending Moderation
  1. Thursday, 15 August 2024 01:53 AM UTC
  2. PowerServer
  3. # 2

It's not about the bandwidth.  The metrics that matter are latency, jitter, and packet loss.  You could have as little as 1mbps download speed and as long as the latency, jitter, and packet loss are great numbers it will perform really well.  When doing large downloads like video then the bandwidth matters, which is not the case for PB apps.

Run this tool: https://speed.cloudflare.com/

Ideally, you want the latency and jitter to be 60ms or less and zero packet loss.

Here are the numbers I'm getting on my Internet connection over WiFi.  Using ethernet cable should be even better.

 

 

 

Comment
  1. Armeen Mazda @Appeon
  2. Thursday, 15 August 2024 14:50 PM UTC
Sure, it would be ideal if you could measure the latency from the client to Azure, but I doubt Azure has poor connectivity. My suspicion is the particular user complaining about performance issue has poor connectivity in general so the test I suggested would reveal it. Doesn't hurt to try.
  1. Helpful
  1. mike S
  2. Thursday, 15 August 2024 14:57 PM UTC
fwiw:

running aws speedtest to the west coast i am seeing average latency of around 115/120: https://awsspeedtest.com/latency



i saw excellent performance with a PS application that i helped test at that location with that latency. so about double the 60ms ideal. It would be interesting to get more numbers of avg latency and overall performance feel.

  1. Helpful
  1. Armeen Mazda @Appeon
  2. Thursday, 15 August 2024 15:00 PM UTC
60ms or less is ideal, 120ms or less is decent. Packet loss is also important. You need to run the CloudFlare test on the user's computer that has the performance problem.
  1. Helpful
There are no comments made yet.
Roland Smith Accepted Answer Pending Moderation
  1. Thursday, 15 August 2024 14:51 PM UTC
  2. PowerServer
  3. # 3

Would it help to add a ping like option in the web api that just returns 'Success'. The client could track the time in milliseconds.

I use the following to track milliseconds:

Function ulong timeBeginPeriod ( ulong uPeriod ) Library "winmm.dll"
Function ulong timeEndPeriod ( ulong uPeriod ) Library "winmm.dll"
Function ulong timeGetTime ( ) Library "winmm.dll"

ULong lul_BeforeTime, lul_Elapsed

timeBeginPeriod(1)

lul_BeforeTime = timeGetTime()

... do stuff

lul_Elapsed = timeGetTime() - lul_BeforeTime

timeEndPeriod(1)
Comment
  1. mike S
  2. Thursday, 15 August 2024 15:00 PM UTC
probably any single rest api call would work - one that is not doing any real work so it doesn't get slowed down.
  1. Helpful
  1. Chris Pollach @Appeon
  2. Thursday, 15 August 2024 15:16 PM UTC
That's a great idea Mike! ;-)
  1. Helpful
There are no comments made yet.
  • Page :
  • 1


There are no replies made for this question yet.
However, you are not allowed to reply to this question.