R.O. Server hanging

We have a R.O. server that 90% of it’s task is to make SQL calls to a Firebird DB. We are having a lot of hanging issues on the R.O. server and the thuoght around here is that all the SQL calls might be the cause. I was thinking that maybe this is why DA is so important and that your DA server handles SQL call threading much more efficent. Any thooughts why so much hanging on the main thread? Also, not always hanging on the main Thread. The RO Client is slow or never recieves data from the RO server. Only thing we did was upgrade from 6.X version to 9.X RO. Any thoughts? This is a Delphi R.O, Server.

What DAC is used? try to change DAC to other one like FireBird, IBDAC, IBO, etc
Will it improve situation?

Also what version of Delphi is used?