如何在 ASP.NET Core 8 Web API 中将游戏进度存储在服务器内存上?

问题描述 投票:0回答:1

例如游戏有记录用户点击的按钮。我想将这些点击存储在服务器的内存中,这样用户就不会跳过它们,点击 10 次后,给用户按钮将它们保存到数据库

我正在考虑使用会话变量。对于此类任务使用会话变量是一个好习惯吗?

或者内存缓存是解决这个问题的更好方法吗?

或者我必须使用像 Redis 这样的分布式内存缓存吗?

c# asp.net-core-webapi .net-8.0
1个回答
0
投票

缓存绝对不是这样做的方法,因为它是为了优化与外部系统的连接或减少相同的繁重操作的数量。

使用会话变量是一种很好的简单方法来做到这一点,比大多数内存中解决方案更好,即使会话在会话结束时自动失效,这似乎是您想要实现的目标。

我对会话变量的处理不多,但文档解释得很好:https://learn.microsoft.com/en-us/aspnet/core/fundamentals/app-state

© www.soinside.com 2019 - 2024. All rights reserved.