Poorer performance compared to VO to X# when using the bBrowser
Posted: Wed Nov 22, 2023 2:09 pm
Hello X# community,
we have a VO application that has been ported to X#. The database server is ADS 11 and we use bTools.bBrowser version 4.3 to display list overviews.
When using the bBrowser, we have considerable performance degradation in various places compared to the original VO application within the same infrastructure.
What can we say:
- The applications run on terminal servers, the ADS server on a dedicated Windows server, all servers are virtualized.
- It gets worse the larger the tables are. Large tables more than 15000 rows and more than 100 columns.
- bBrowser:Server:Notify(NOTIFYFILECHANGE) Runtime up to 5 seconds.
- The search with bBrowser:Server:Locate is executed for non-index fields when entering in a search field. The first pass takes less than 1 second, all further passes from the input of the 2 character take 4 seconds and longer. At the end of the method Serach() bBrowser:Server:Notify(NOTIFYFILECHANGE) is called again which adds a few more seconds.
The longer running times of the VO for the X# application at the locations described are worse by a factor of 2 to 5.
Does anyone have an idea which switches, settings or whatever else can be checked or what could cause this deterioration compared to the VO application?
Many thanks in advance!
Here is an example of what happens when you enter the word "OTTO" in the search field.
[12:06:14 INF] stdBrowser Search Start width Key 79 00:03:00.0696
[12:06:14 INF] stdBrowser Search Server:Locate(Upper(NAME1) = "O") Start 00:03:00.0700
[12:06:15 INF] stdBrowser Search Server:Locate(Upper(NAME1) = "O") End 00:03:01.0296
[12:06:17 INF] stdBrowser Search End width Key 79 00:03:03.0697
[12:06:17 INF] stdBrowser Search Start width Key 116 00:03:03.0704
[12:06:17 INF] stdBrowser Search Server:Locate(Upper(NAME1) = "OT") Start 00:03:03.0708
[12:06:22 INF] stdBrowser Search Server:Locate(Upper(NAME1) = "OT") End 00:03:08.0245
[12:06:24 INF] stdBrowser Search End width Key 116 00:03:10.0709
[12:06:24 INF] stdBrowser Search Start width Key 116 00:03:10.0714
[12:06:24 INF] stdBrowser Search Server:Locate(Upper(NAME1) = "OTT") Start 00:03:10.0718
[12:06:29 INF] stdBrowser Search Server:Locate(Upper(NAME1) = "OTT") End 00:03:15.0379
[12:06:31 INF] stdBrowser Search End width Key 116 00:03:17.0948
[12:06:31 INF] stdBrowser Search Start width Key 111 00:03:17.0953
[12:06:31 INF] stdBrowser Search Server:Locate(Upper(NAME1) = "OTTO") Start 00:03:17.0961
[12:06:36 INF] stdBrowser Search Server:Locate(Upper(NAME1) = "OTTO") End 00:03:22.0587
[12:06:38 INF] stdBrowser Search End width Key 111 00:03:25.0172
we have a VO application that has been ported to X#. The database server is ADS 11 and we use bTools.bBrowser version 4.3 to display list overviews.
When using the bBrowser, we have considerable performance degradation in various places compared to the original VO application within the same infrastructure.
What can we say:
- The applications run on terminal servers, the ADS server on a dedicated Windows server, all servers are virtualized.
- It gets worse the larger the tables are. Large tables more than 15000 rows and more than 100 columns.
- bBrowser:Server:Notify(NOTIFYFILECHANGE) Runtime up to 5 seconds.
- The search with bBrowser:Server:Locate is executed for non-index fields when entering in a search field. The first pass takes less than 1 second, all further passes from the input of the 2 character take 4 seconds and longer. At the end of the method Serach() bBrowser:Server:Notify(NOTIFYFILECHANGE) is called again which adds a few more seconds.
The longer running times of the VO for the X# application at the locations described are worse by a factor of 2 to 5.
Does anyone have an idea which switches, settings or whatever else can be checked or what could cause this deterioration compared to the VO application?
Many thanks in advance!
Here is an example of what happens when you enter the word "OTTO" in the search field.
[12:06:14 INF] stdBrowser Search Start width Key 79 00:03:00.0696
[12:06:14 INF] stdBrowser Search Server:Locate(Upper(NAME1) = "O") Start 00:03:00.0700
[12:06:15 INF] stdBrowser Search Server:Locate(Upper(NAME1) = "O") End 00:03:01.0296
[12:06:17 INF] stdBrowser Search End width Key 79 00:03:03.0697
[12:06:17 INF] stdBrowser Search Start width Key 116 00:03:03.0704
[12:06:17 INF] stdBrowser Search Server:Locate(Upper(NAME1) = "OT") Start 00:03:03.0708
[12:06:22 INF] stdBrowser Search Server:Locate(Upper(NAME1) = "OT") End 00:03:08.0245
[12:06:24 INF] stdBrowser Search End width Key 116 00:03:10.0709
[12:06:24 INF] stdBrowser Search Start width Key 116 00:03:10.0714
[12:06:24 INF] stdBrowser Search Server:Locate(Upper(NAME1) = "OTT") Start 00:03:10.0718
[12:06:29 INF] stdBrowser Search Server:Locate(Upper(NAME1) = "OTT") End 00:03:15.0379
[12:06:31 INF] stdBrowser Search End width Key 116 00:03:17.0948
[12:06:31 INF] stdBrowser Search Start width Key 111 00:03:17.0953
[12:06:31 INF] stdBrowser Search Server:Locate(Upper(NAME1) = "OTTO") Start 00:03:17.0961
[12:06:36 INF] stdBrowser Search Server:Locate(Upper(NAME1) = "OTTO") End 00:03:22.0587
[12:06:38 INF] stdBrowser Search End width Key 111 00:03:25.0172