Subject | Re: [firebird-support] Slow response on a big database? |
---|---|
Author | Indysoft Bt. |
Post date | 2009-02-17T08:14:50Z |
Hello!
Yes, in this case EVENTS also would be good solution for the problem.
Polling the database in predifined intervals is a very resource-killing
method. ASP.Net QueryNotification also uses polling and MS says it is
not recommended technique for more then 8-10 clients. It kills the server.
However events don't provide additional information on record level
data, there are workarounds. I wrote a Delphi UDF, that is a TCP client.
On the server machine runs a simple TCP server, and clients connected to
it. Triggers call the UDF, that connects also to the TCP server and
sends the TABLE_NAME,PK_FIELD, PK_VALUE,MOD_TIME in a record, and this
structure is forwarded to all connected clients. In this form I always
know what was updated, inserted, deleted, and my application can make a
decision what to do in the current situation. This works very well, and
doesn't mean significant load to the server. It is a very
resource-friendly way of doing things like this. If you need the UDF,
and the client and server side, contact me on my email address.
Best regards
Alex :-)
Yes, in this case EVENTS also would be good solution for the problem.
Polling the database in predifined intervals is a very resource-killing
method. ASP.Net QueryNotification also uses polling and MS says it is
not recommended technique for more then 8-10 clients. It kills the server.
However events don't provide additional information on record level
data, there are workarounds. I wrote a Delphi UDF, that is a TCP client.
On the server machine runs a simple TCP server, and clients connected to
it. Triggers call the UDF, that connects also to the TCP server and
sends the TABLE_NAME,PK_FIELD, PK_VALUE,MOD_TIME in a record, and this
structure is forwarded to all connected clients. In this form I always
know what was updated, inserted, deleted, and my application can make a
decision what to do in the current situation. This works very well, and
doesn't mean significant load to the server. It is a very
resource-friendly way of doing things like this. If you need the UDF,
and the client and server side, contact me on my email address.
Best regards
Alex :-)