Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
pooled Connections usage
#1
Could you please point me to the best practice on using pooled connections?. 
The use of LockDataModule and UnlockDatamodule.
I have an iw15.1.9+Delphi XE7 + FireDac + SQL Server app working with this scenario and we are facing frequent htto error 500 on IIS 8.5 (ISAPI) with very small load of users (10 concurrent).

We saw that sometimes the session data from different users were mixed so we discovered that we where using incorrectly the tiwPoolDatamodule object on serverController.

We are using grids and db aware controls so we could not simply Lock and Release on the same procedure. We decided not tu add the DB Query/Connection Controls to UserSession and use pooled connections due to the scalability on connectios that we are specting to have, 300 concurrent connections.

We use a LockDatamodule on every single entry event point and an UnLockDatamodule on the AfterRender+OnDestroy event of every single form.

This is not working, we are leaving some Datamodules blocked so we are consuming all of the datamodules available and ending with no more pool connections available error.

I think this is a very complex problem with multiple problems on one text but I think is due to the way we are using the pooled connections.


thank you in advance for any advice
Reply
#2
(04-13-2020, 07:40 PM)dcazarez Wrote: Could you please point me to the best practice on using pooled connections?. 
The use of LockDataModule and UnlockDatamodule.
I have an iw15.1.9+Delphi XE7 + FireDac + SQL Server app working with this scenario and we are facing frequent htto error 500 on IIS 8.5 (ISAPI) with very small load of users (10 concurrent).

We saw that sometimes the session data from different users were mixed so we discovered that we where using incorrectly the tiwPoolDatamodule object on serverController.

We are using grids and db aware controls so we could not simply Lock and Release on the same procedure. We decided not tu add the DB Query/Connection Controls to UserSession and use pooled connections due to the scalability on connectios that we are specting to have, 300 concurrent connections.

We use a LockDatamodule on every single entry event point and an UnLockDatamodule on the AfterRender+OnDestroy event of every single form.

This is not working, we are leaving some Datamodules blocked so we are consuming all of the datamodules available and ending with no more pool connections available error.

I think this is a very complex problem with multiple problems on one text but I think is due to the way we are using the pooled connections.


thank you in advance for any advice

This may help you:
https://www.cgdevtools.com/cgforum/viewt...118&t=3383

... again thanks to Alexandre Machado
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)