gpt4 book ai didi

asp.net - 在 Web 应用程序中存储信用余额的最佳实践

转载 作者:行者123 更新时间:2023-12-02 15:57:00 26 4
gpt4 key购买 nike

我正在创建一个 Web 应用程序,用户可以在其中购买积分(使用真实货币)并将其用于购买元素。

我需要保留用户每次购买或花费积分的历史记录。

我经常需要知道用户当前的信用余额。

我通常遵循的原则是,将相同的数据存储两次是不好的做法,即因为我有信用余额所有增加和减少的历史记录,所以我不应该将余额本身存储为单独的字段。

但是,每次用户打开新页面(将显示其当前余额)时计算此余额似乎有些过分。另一方面,为了防止系统每次都必须计算出来,将其存储在数据库或网络服务器的内存中似乎是错误的。

有人有这方面的经验和/或知道针对这种情况推荐的最佳实践是什么?

最佳答案

我参与过几个具有类似需求的项目,动态计算当前余额并没有什么问题 - 这是最不容易出错的解决方案,而且这种查询是大多数数据库设计的目的;除非您正在开发具有 Facebook 级别流量的网站,否则类似 “select sum(transactionValue) from transactions where userID = ?” 的速度应该非常快。

将余额存储在其他地方(实际上是复制它)可能会引入微妙的错误和差异,“缓存”值与基础交易不同步;要做到这一点所需的工作量可能是巨大的。

关于asp.net - 在 Web 应用程序中存储信用余额的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15543462/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com