1. damian jimenez
  2. PowerServer
  3. Tuesday, 18 July 2023 20:04 PM UTC

We have managed to mount the migrated application in Powerbuilder 2022R2 on an IIS on Windows server 2022, connected to a SQL Server 2022 database in an Azure cloud.


We have verified that the response times of the requests are much slower than from the private LAN.
Without delving into the application itself.
Would there be differences in response times publishing the application in other environments ?
I would like to know if there is any recommendation and the advantages and disadvantages of the options they would have

thank you so much

Francisco Martinez @Appeon Accepted Answer Pending Moderation
  1. Tuesday, 18 July 2023 21:11 PM UTC
  2. PowerServer
  3. # 1

Hi Damian,

It's only natural that Azure has slower response times than LAN connection. You can try to minimize this latency by reducing the amount of trips to the Web API, maybe this feature can help you accomplish this task: https://docs.appeon.com/pb2022/objects_and_controls/PowerServerLabel_object.html

Regards,
Francisco

Comment
  1. Francisco Martinez @Appeon
  2. Tuesday, 18 July 2023 21:14 PM UTC
Additionally, I don't know if the Web API is also on Azure, but it's not generally recommended to have the Web API and the Database be too far apart connection-wise. You'd see an immediate performance improvement if you put the database and the Web API as close together as possible.
  1. Helpful
  1. Chris Pollach @Appeon
  2. Wednesday, 19 July 2023 01:02 AM UTC
Hi Damian,

Adding to Francisco's excellent advise - I am not an Azure guy but.- I have tons of experience with AWS and have setup many Web & PS's servers and Apps on that platform. What I did there was to ...

1) Make sure that I chose an AWS location as close to the App user's users as possible for prime network efficiency.

2) Make sure that the Web Server and PS Server were on the same network segment.

3) Make sure that the EC2 O/S allocation had lots of memory for IIS & PS to execute and that had a high dispatching priority.

4) Located the DBMS Server as close to PS as possible network wise - again, on the same network segment if possible.

5) Made sure that the DBMS Server was allocated with lots of memory and fast HD space

6) Made sure that all of the above were running 64 b it mode.

So I am not sure if Azure can be configured as such but if possible, I am sure that these type of configurations would be key on Azure as well.

Just my $0.02

Regards ... Chris
  1. Helpful 1
  1. mike S
  2. Wednesday, 19 July 2023 16:30 PM UTC
continuing chris's list:

1: use this link to find the fastest azure location to host your PS/sql server : https://azurespeedtest.azurewebsites.net/



2: The PS web api is what is doing all the work, and that MUST be in same location as the azure sql database. the web server location is not as important - it just pulls down updates and checks for updates. it will not impact overall speed once your application is downloaded, just startup. Azure has some options for that to host static websites on the edge.



3. the PS web api host can be IIS or a container running linux. I tested an azure container with only 1 cpu and very little memory and it was much slower than the larger sized ones. there are pros/cons for IIS vs container, but generally they perform about the same.



5. "SQL Server 2022 database in an Azure cloud." Do you mean you have sql server in a VM? Or a managed instance? the VM approach was faster for a number of years, however i changed over to the AZURE sql vcore options since the speed of that improved a lot and is now faster than a VM for my system. test and see which is faster for you. Azure sql is a dream to administer, so look at that very closely. You also have a lot of price/performance options in azure sql - you can even setup jobs to scale the system down to super slow/cheap at night and then super fast/expensive in the morning.



If you have batch processes that retrieve data down, and then send it back up, it will be noticeably slower. You probably need to refactor things if that is the main problem. some performance improvements for PS hopefully will be in the next PS 2022R2 release as well. We have moved some of our batch processing to occur as a REST api call to a .net service that starts up our PB application via command line, runs the process, then shuts down.



Also, some of my startup processes were a LOT slower in PS. I ended up caching objects rather than create them for each screen, and that made things a lot faster. A 10 second screen open dropped down to under a second.



  1. Helpful 1
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.