gpt4 book ai didi

.net - 优化每分钟大量数据库请求的应用程序

转载 作者:行者123 更新时间:2023-12-03 00:44:21 25 4
gpt4 key购买 nike

我必须在我的应用程序中向最终用户提供某些服务的免费演示。免费演示可以为新用户一次,30 分钟、1 小时、5 小时 等(预定义时间)。

用户还可以部分消耗该时间。就像 30 分钟的免费演示一样,他们今天可以使用 10 分钟,明天可以使用 15 分钟,剩下的时间可以在第二天使用,等等。现在,如果用户选择 30 分钟的免费演示并登录并使用该服务。我可以通过用户的开始时间和结束时间将用户限制为 30 分钟。如果开始时间和结束时间之和等于 30 分钟,我可以将它们发送到付款页面。

现在出现了一些不确定条件的问题,例如如果用户关闭浏览器或他们的互联网停止工作或在事件 session 期间发生其他任何情况会怎样。在此,由于缺少结束时间,我无法计算他们消耗的时间。

场景可能如下所示(30 分钟演示)。

UserID  StartTime           EndTime             Consumed(mins)
10 09-04-2015 10:00 09-04-2015 10:10 10
10 10-04-2015 05:00 10-04-2015 05:04 4
10 11-04-2015 07:46 11-04-2015 07:56 10
10 11-04-2015 10:00 // Browser closed or any uncertain condition
10 11-04-2015 11:00 // How to restrict user to use actual 30 mins because I do not have EndTime in above row to calculate Consumed mins.

我可能有超过100000个用户同时使用我们的服务,所以我正在为此寻找一个有效的解决方案。

根据我的理解,我可以创建一个单独的作业来检查用户的 LastActiviteTime,并基于此我可以更新数据库中的消耗(分钟)。该作业将每分钟执行一次,另一方面,每个 session 用户的浏览器将更新数据库中的 LastActiveTime

这可以解决我的问题,但我不太确定应用程序的性能,因为每分钟有大量数据库请求。

最佳答案

您可能还可以使用 JavaScript 通过客户端脚本进行开始时间、结束时间验证,并将开始时间、结束时间存储在浏览器 cookie 中并运行及时脚本(每分钟执行一次的 java 脚本),因此如果验证失败客户端本身不需要在服务器(数据库)端验证它,这样就会减少大量用户对数据库的查询。

关于.net - 优化每分钟大量数据库请求的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29530624/

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