Page 1 of 1
Strategies to improve Middle Tier performance
Posted: Thu Jun 23, 2022 11:08 am
by wjstarck
What are some strategies I could implement to improve Middle Tier performance?
It's OK right now but could be better. My forms have a *lot of controls which is unavoidable. I notice that OD moved away from listBoxes in favor of grids on some forms (eg., FormPerio). Is this the reason?
Any other helpful hints or suggestions are appreciated.
Re: Strategies to improve Middle Tier performance
Posted: Mon Jul 11, 2022 12:16 pm
by afeuer
I'm also very interested in what possible solutions there are here. We recently moved from a daisy chain replication model to a cloud hosted VPS with a middle tier server. The database and middle tier are on the same machine. The data gets routed through a VPC and then there is a site to site VPN with very good speeds. We're still getting a couple of seconds of lag between each screen and sometimes longer. The server resources are not maxing out and neither is our bandwidth. Any suggestions?
Re: Strategies to improve Middle Tier performance
Posted: Fri Jul 29, 2022 5:15 pm
by jsalmon
Controls have no impact on Middle Tier performance. Methods that have RemotingRole (now known as MiddleTierRole) checks at the top of them are typically methods that run queries against the database which are what cause Middle Tier slowness. You want to minimize the number of times you invoke such methods. Don't make database calls in loops, events that get fired a lot (like OnPaint), etc.
Sometimes Middle Tier can be sped up with something as simple as changing the signature of a method from wanting a list of objects as a parameter to taking in a list of primitives. E.g. a Delete() method that takes in a list of patients would take much longer than invoking a Delete() method that takes in a list of longs even if the guts of the both methods were nearly identical.