3

我目前正在增强产品以支持大型文件内容的 Web 交付。我想将它存储在数据库中,无论我是否选择通过BLOB FILESTREAM,以下问题仍然成立。

我的 WCF 方法将返回一个流,这意味着在客户端读取内容时文件流将保持打开状态。如果连接速度很慢,则流可能会打开一段时间。

问题:连接池假设连接仅在短时间内独占。我是否正确假设,假设我有一个有限大小的连接池,如果使用慢速网络连接下载文件,可能会出现争用问题?

在这种假设下,我真的很想使用 FILESTREAM,并直接从文件系统打开文件,而不是 SQL 连接。但是,如果数据库是远程的,我将别无选择,只能从 SQL 连接中提取内容(直到我有文件的本地缓存)。

我意识到我还有其他选择,例如服务器缓冲流,但这也会产生影响。我现在希望只讨论与返回从 DB 连接获得的流有关的问题。

4

0 回答 0