【发布时间】:2011-05-31 15:22:26
【问题描述】:
在我的应用程序中,我正在为每个用户 ID 创建一个映射,其中包含他可以访问的文件 ID。
例子:
用户 ID - 101 数据 - 100100101
所以我为每个用户创建了这个文件映射。当该位为 1 时,他可以访问该文件;否则他不会。但我的问题是我有 40,000,000 个文件。
每当用户搜索时,都会加载相应的用户地图以产生正确的结果。如果我有 40,000 个用户,这意味着我需要创建 40,000 个地图文件。
如何为这个系统创建一个高性能的实现?
【问题讨论】:
-
创建一些关卡和所有者,然后将这些数据附加到文件中。然后检查用户是否可以运行/读/写/等它。除非您正在寻找其他东西?
-
您能否对有权访问同一组文件的用户进行分组?然后为每个组创建一个地图文件,而不是每个用户一个。
-
非常混乱的问题。请显示一些现有的代码/示例。这是 UNIX 吗?而且 - 我不敢问 - 你为什么要这样做?
-
我正在创建这个文件,然后我将加载到内存中.. 我正在这样做.. 我需要知道他是否有访问权限...
-
仅出于此目的,我正在创建文件..我不能使用不可能的组...
标签: c# performance business-logic