reactjs - 我应该将用户数据存储到数据库或Redis缓存的哪里

标签 reactjs database spring-boot redis

我有一个工作流向导类型的 Web 应用程序(使用 ReactJS 构建),有 5 个页面,每个页面都有一些输入字段和一个“保存并下一步”按钮,最后一页有“保存并提交”按钮。

登录的用户可以选择在任何页面后注销,当他重新登录到应用程序时,他应该能够从上次中断的地方继续。

我的问题是,在单击每个页面上的“保存并下一步”按钮时,我应该在哪里保存用户输入的数据,我可以选择将数据存储到数据库或 Redis 缓存。

最佳答案

您可以选择三种临时存储选项:

<强>1。本地内存存储。

<强>2。分布在内存缓存中(以redis为例)

<强>3。数据库。

对于选项1,成本非常便宜并且可以轻松检索。但这取决于对服务器的粘性来保证其正常工作。

对于选项2,成本较高且查询能力有限。但可以在分布式环境中工作但可扩展。

对于选项3,成本比上面两种要高,但查询能力也很高。具有以上优点。许多数据库(例如 Mongo)也支持选项 2。

作为一种解决方案,对于该用例,我会选择 2,在内存缓存中,因为查询始终基于键,并且您可以在一段时间后删除记录。

关于reactjs - 我应该将用户数据存储到数据库或Redis缓存的哪里,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58021740/

相关文章:

node.js - 在 AWS CodeBuild 期间使用 npm install 时未创建 node_modules 目录

spring-boot - Spring Boot 服务调用将不会通过 HTTP Proxy (Fiddler) 运行

database - 我如何为预算应用程序建模预算数据?

ruby-on-rails - 设计题: Aliases for a Location model (Rails)

mongodb - 使用 Mongo 恢复将集合导入到非本地地址

spring-boot - 分布式数据库模式的application.properties配置

java - 迁移到 Spring Boot 2 后忽略自定义 ObjectMapper

javascript - 在Reducer中过滤数组 - Redux

reactjs - 如何将 google 字体添加到 gatsby 网站

javascript - 如何使用 React 的 Material UI 创建响应式侧边栏组件?