数据库服务器不可用时脱机缓冲数据

Wal*_*d A 0 c# oracle multithreading offline-caching

我是C#的新手,我实现了一个应用程序,它从套接字读取数据并使用远程服务器上的oracle DB中的单独线程存储它.我的问题是:当数据库服务器关闭而我无法将数据保存在数据库中时,是否有C#或.net中的工具或技术允许我在本地缓冲数据然后在连接时将其发送到服务器再次可用.我不想丢失来自套接字的信息,同时我想保留我的oracle数据库中的数据一致性,因为我有一个序列和一些触发器,在插入每个记录后保存附加信息.

Xav*_*r J 5

您正在尝试引入容错

处理办法:

  1. 消息队列服务器(最好)等MSMQ,RabbitMQ的,或类似的
  2. 本地数据库,如SQLite或SQL Server Express.
  3. JSON,XML或CSV格式的本地文件.

使用这些方法中的任何一种,它们将存储记录,直到您的数据库服务器再次可用.消息队列是最具扩展性的方法.