I have a split database with a single back-end accessed from two identical copies of a front-end. The back-end and front-ends are all located on a 1Gbps LAN. In this configuration, performance is abysmal because all query execution happens on the front-end systems, and involves shipping all the data (indexes and table rows) across the network. Even if all the necessary indexes exist, there's still too much data transfer across the network and performance is unusable.
With the front-end and back-end on a single machine performance is excellent, so my solution has been to host the database and front-ends on a single system, accessed via remote-desktop from the client systems where the front-ends "should" run (and would, if there was a real database server at the back-end).
We investigated converting the back-end to MSSQL Server, but since it was originally developed over 15 years ago it uses a lot of DAO and the effort to convert was deemed too large to be justified. We will eventually rewrite it, but in the interim I was wondering if there are any other tricks that would improve performance in the pure LAN configuration, i.e. front-ends running on the client systems without a database host and remote desktop
With the front-end and back-end on a single machine performance is excellent, so my solution has been to host the database and front-ends on a single system, accessed via remote-desktop from the client systems where the front-ends "should" run (and would, if there was a real database server at the back-end).
We investigated converting the back-end to MSSQL Server, but since it was originally developed over 15 years ago it uses a lot of DAO and the effort to convert was deemed too large to be justified. We will eventually rewrite it, but in the interim I was wondering if there are any other tricks that would improve performance in the pure LAN configuration, i.e. front-ends running on the client systems without a database host and remote desktop