1

我可能不会为此烦恼,但如果它非常简单,我可以考虑。我正在设计的网站要保存数十万个文件。我不知道我们是否只有一个或多个下载。现在的选择是 A) 只是文件 B) 具有文件 + 许可证和条件的存档。

我试图弄清楚提供两者并使用类似 file.open/read 之类的东西在它之前和之后为包含许可证和其他 zip 内容的存档标头添加前缀是有效的。我最大的担心是文件打开/读取不会像让服务器传输文件那样有效,并且如果它难以动态生成和更改 zip 的内容(如果用户希望更改许可证或者我们想要添加其他数据,例如作者描述、作者 URL 和网站上的永久链接)

它是否有效,我将如何仅从数据库中提取的原始文件和数据动态创建文件?

PS:我正在使用 xsp.net 和 mono 使用 debian/apache/asp.net。

4

2 回答 2

0

您可以使用 zip 库(System.IO.Packaging.ZipPackagedotnetzipSharpZipLib)或事件命令行程序(比如 7zip)来压缩文件。该库应该提供更好的性能。

然而,重要的是添加一个缓存层,即 zip 文件应该缓存在文件系统中,以便在请求相同时可以直接提供它们。

于 2010-10-21T09:36:10.713 回答
0

SharpZipLib是一个非常好的基于流的库,您可以使用它来创建存档文件。

于 2010-10-21T09:14:08.553 回答