我有一个具有庞大数据库的新游戏玩家排名页面:
- 我们有一个世界。
- 每个世界都有 X 个碎片(~200)。
- 每个碎片有 2 个派系。
- 每个碎片有 X 个公会。
- 公会有 1 个分片、1 个派系,当然还有一个世界。
- 公会的排名将取决于杀死 Boss。
我将计算公会在世界、分片和派系中的排名。 我只在数据库中保存了 BossKills 的点数。
因此,每次打开显示排名的网站时,我都会进行非常非常大的计算。如何使这个计算尽可能快?
我的想法是创建一个 View ,让 View 进行计算并只取回信息,或者取回我需要的所有信息并在代码中计算。
最佳答案
我肯定会在您的数据库中进行计算。信息就在那里。仅返回需要显示的数据以减少代码的数据传输和处理器时间。
也许可以帮助您换个角度:
如果您的数据需要非常频繁地显示,并且计算成本很高,请考虑将该信息存储在数据库列中,并创建一个触发器来更新,或者每次都在该列中插入一条记录(在您的案例 ) 一个老板被杀。
tblRank
用户ID | Score_in_guild(整数)| ...
关于c# - 排名页面 - 在哪里计算大的东西(数据库或代码)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5179262/