Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 数据库服务器不可用时脱机缓冲数据_C#_Multithreading_Oracle_Offline Caching - Fatal编程技术网

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

C# 数据库服务器不可用时脱机缓冲数据,c#,multithreading,oracle,offline-caching,C#,Multithreading,Oracle,Offline Caching,我是C#的新手,我实现了一个应用程序,它从套接字读取数据,并使用一个单独的线程将其存储在远程服务器上的oracle数据库中。 我的问题是:当数据库服务器关闭,我无法将数据保存在数据库中时,C#或.net中是否有工具或技术允许我在本地缓冲数据,然后在连接再次可用时将其发送到服务器。我不想丢失来自套接字的信息,同时我想保留oracle数据库中的数据一致性,因为我有一个序列和一些触发器,可以在插入每个记录后保存额外的信息。您正在尝试引入容错 方法: 消息队列服务器(最佳),如MSMQ、RabbitMQ

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

您正在尝试引入容错

方法:

  • 消息队列服务器(最佳),如MSMQ、RabbitMQ或类似服务器
  • 本地数据库,如SQLite或SQL Server Express
  • JSON、XML或CSV格式的本地文件

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

    您正在尝试引入容错

    方法:

  • 消息队列服务器(最佳),如MSMQ、RabbitMQ或类似服务器
  • 本地数据库,如SQLite或SQL Server Express
  • JSON、XML或CSV格式的本地文件
  • 使用这些方法中的任何一种,它们都将存储记录,直到数据库服务器再次可用。消息队列是最具伸缩性的方法