Board index » delphi » ADO/SQLServer slowing down in my automation server

ADO/SQLServer slowing down in my automation server

I have build an activeX dll with an automation server which uses ADO
(ADOExpress) to access MS SQL Server 7 databases. For each call to the dll I
pass the connectionstring which the dll should use (it has to work with more
than one database at a time). I am calling the activex dll from an isapi
dll.

It works, but opening recordsets gets _very_ slow after a few calls to the
dll. I have been watching the amount of user connections in the database, to
see if there is a problem. But it looks ok, so I guess the connection
pooling is working ok. I am always closing and freeing the ado components in
the dll. I am using client-side cursors.

After a few minutes the activex dll gets more responsive again, but after a
few new calls it slows down again.

I still have a feeling it has to do with connection handing, because I am
working with passed connection strings instead of 'fixed' adoconnections.

If anyone has experience with using ADOExpress in an axtivex automation
server and has an idea what this problem could be, please let me know.

Thanks,

- Ed

----------------------------------
Ed Sonneveld
SunBase IT Projects
http://www.sunbase.nl
----------------------------------

 

Re:ADO/SQLServer slowing down in my automation server


Is it possible that the problem might be on your SQL Server end instead of
ADO? I would test to see if maybe the SQL Server machine is just not
handling the load correctly. Other than that I don't know.

One thing to be aware of: connection pooling only works if you are using the
same credentials everytime you open a connection to the database. If you
pass in varying connection strings (diff userid/password), connections
cannot be pooled and ADO/OLEDB will incrementally open connections in the
normal manner.

--
have fun
Binh Ly
http://www.techvanguards.com

Quote
"Ed Sonneveld" <i...@sunbase.nl> wrote in message news:3bc3ff52$1_1@dnews...
> I have build an activeX dll with an automation server which uses ADO
> (ADOExpress) to access MS SQL Server 7 databases. For each call to the dll
I
> pass the connectionstring which the dll should use (it has to work with
more
> than one database at a time). I am calling the activex dll from an isapi
> dll.

> It works, but opening recordsets gets _very_ slow after a few calls to the
> dll. I have been watching the amount of user connections in the database,
to
> see if there is a problem. But it looks ok, so I guess the connection
> pooling is working ok. I am always closing and freeing the ado components
in
> the dll. I am using client-side cursors.

> After a few minutes the activex dll gets more responsive again, but after
a
> few new calls it slows down again.

> I still have a feeling it has to do with connection handing, because I am
> working with passed connection strings instead of 'fixed' adoconnections.

> If anyone has experience with using ADOExpress in an axtivex automation
> server and has an idea what this problem could be, please let me know.

> Thanks,

> - Ed

> ----------------------------------
> Ed Sonneveld
> SunBase IT Projects
> http://www.sunbase.nl
> ----------------------------------

Re:ADO/SQLServer slowing down in my automation server


Hi Binh,

Could be, but I would not have an idea what. I'm doing simple things.

The connection strings are all the same in my test scenario. Also, when
monitoring the user connections there are no problems on that end.

I'll try a post on the ADO ng as well.

Thanks,

- Ed

"Binh Ly" <b...@castle.net> schreef in bericht news:3bc4bf28$1_1@dnews...

Quote
> Is it possible that the problem might be on your SQL Server end instead of
> ADO? I would test to see if maybe the SQL Server machine is just not
> handling the load correctly. Other than that I don't know.

> One thing to be aware of: connection pooling only works if you are using
the
> same credentials everytime you open a connection to the database. If you
> pass in varying connection strings (diff userid/password), connections
> cannot be pooled and ADO/OLEDB will incrementally open connections in the
> normal manner.

> --
> have fun
> Binh Ly
> http://www.techvanguards.com

> "Ed Sonneveld" <i...@sunbase.nl> wrote in message

news:3bc3ff52$1_1@dnews...

- Show quoted text -

Quote
> > I have build an activeX dll with an automation server which uses ADO
> > (ADOExpress) to access MS SQL Server 7 databases. For each call to the
dll
> I
> > pass the connectionstring which the dll should use (it has to work with
> more
> > than one database at a time). I am calling the activex dll from an isapi
> > dll.

> > It works, but opening recordsets gets _very_ slow after a few calls to
the
> > dll. I have been watching the amount of user connections in the
database,
> to
> > see if there is a problem. But it looks ok, so I guess the connection
> > pooling is working ok. I am always closing and freeing the ado
components
> in
> > the dll. I am using client-side cursors.

> > After a few minutes the activex dll gets more responsive again, but
after
> a
> > few new calls it slows down again.

> > I still have a feeling it has to do with connection handing, because I
am
> > working with passed connection strings instead of 'fixed'
adoconnections.

> > If anyone has experience with using ADOExpress in an axtivex automation
> > server and has an idea what this problem could be, please let me know.

> > Thanks,

> > - Ed

> > ----------------------------------
> > Ed Sonneveld
> > SunBase IT Projects
> > http://www.sunbase.nl
> > ----------------------------------

Other Threads