我正在开发一个具有自动刷新功能的 .NET 应用程序。我数据库中的每个表都有一个 MODIFIED_DATE 列,在每次更新或插入后都会更新。目前,自动刷新功能仅适用于一张表,但将来可能会发生变化。我目前正在考虑以下可能的解决方案:
客户端应用程序在计时器上运行一次查询,例如每 10 秒一次,并带回 MODIFIED_DATE 大于存储在我的应用程序中的上次修改日期的所有行。
在每台侦听 firebird 事件的客户端计算机上保持一个专用的开放连接,然后在触发事件后运行查询。该事件显然会在每次使用 POST_EVENT 命令更新/插入后由数据库触发。
开发一个服务,该服务将位于服务器上,侦听 firebird 数据库事件,然后使用 .NET 远程处理来通知客户端应用程序。
谁能告诉我上述哪种解决方案在性能和可扩展性方面更好?
我希望解决方案对数据库工作负载的影响最小。